C#的三种复杂变量类型
前面介绍的变量都有一个基本的取值范围,除了String类型之外,每种类型的变量在内存中只占一定数量的字节,下面介绍3种用户自定义的复杂变量。
一. 枚举型
定义枚举型:关键字enum
使用方法:
enum Ename
{
Value1,value2,………….valueN
}
声明一个Ename类型的枚举变量 Ename  myenum=Ename.value;默认情况下枚举类型的类
型是intvalue1,value2等的值默认从0依次递增1。同时也可以使用其他类型。请看例题:
writeline方法属于类
enum Days
{
Monday=1,
Tursday=2,
Wensday=3,
Thursday=4,
Friday=5,
Saturday=6,
Sunday=7
}
enum Days :short
{
}
使用
Days myday = Days.Friday;
Console.WriteLine("myday is{0}  :",myday);
输出结果如下图所示:
 
定义enum的位置
 
枚举型的基本类型可以是byte,sbyte,long ,short,ushort,int ,uint,ulong.
二. 结构体
结构体定义和使用的方法和枚举类型差不多,只是在结构体中所有定义的变量都可以有自己的值,而在一个枚举型变量的值只能是枚举所有值中的一个,在上面的例题中Days myday的值只能是一个星期中的某一天。同样我们先看一个结构体的使用过程。
struct Cloth  //结构体名字
{
public int age;//衣服使用寿命
public string sex;//合适性别
public string style;//款式
public double price;//价格
public double count;//折扣
}
Cloth mycloth;
mycloth.age = 2;
unt = 0.98;
mycloth.price = 999.99;
mycloth.sex = "man";
mycloth.style = "长裤";
输出是:
Console.WriteLine("结构体数据输出:"); 
Console.WriteLine("age={0},sex={1},style={2},price={3},count={4}",mycloth.age,mycloth.sex,mycloth.style,mycloth.unt);
结果是:
 
三. 数组
数组是用来存储大量类型一样而数值不一样数据的。例如在一个班级的同学信息中,用一个字符串数组来保存所有同学的姓名。
string[] StuNames = new string[5];
StuNames[0] = "国家";
StuNames[1] = "人们";
StuNames[2] = "中国";
StuNames[3] = "汉族";
StuNames[4] = "主席";
foreach (string sName in StuNames)
Console.WriteLine(sName);
输出结果图:
 
数组的使用包括数组声明和初始化,在定义数组时,数组的长度是一个常数,不能用个变数来表示:例如:int[] score = new int[7] int []score=new int [const Size];或者int[] EnglishScore ={ 1, 5, 6, 8, 5, 7, 74 };
数组在访问之前必须初始化,如果只定义了而没有初始化则会出现错误的。
多维数组:可以根据需要定义不同维数的数字,一维,二维数组使用的比较多,而3维以上的数组使用频率就罕见了。例如定义一个二维数组来表示某个班级30个人的三门课程的成绩,double [] stuScore=new double[30][3],那么stuScore[1][2]表示第二个学生第三门课程的成绩,这些例子不多说了,大家要编程亲自体会。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。