枚举,结构,数组

枚举,结构,数组
1.枚举

enum 枚举名
{
value1,
value2,
......
valueN
}
默认的情况下值从0开始,也可以指定值(一般指定数字)
enum my:byte
{
value1=1,
value2=2
}

这时可以把my 看作类型一样使用
my x = my.value1;
Response.Write(x+"\a"); value1
Response.Write((int)x); 1

2. 结构

struct my
    {
        public int k;
        public string sql;
    }
my x=new my();
x.k = 2;
使用结构数组可以很方便的存储多种不同数据数组(一一对应关系 例说纸牌 桃1)

使用封箱和拆箱

my x=new my();

x.k=5;

object re = x;//封箱

my y = (my)re;   //拆箱

Response.Write(y.k);

3. 数组

int[] my={};

int[] my=new int[5];(就用这种方式)

多维数组

int[,] my=new int[2,4]   2行4列

数组的数组

int[][] my=new int[2][] 注意后面的那个不能指定,因为,每行(组)中的数据个数不固定;
        my[0]=new int[2]{1,2};
        my[1] = new int[3] { 1, 1, 1 };
        Response.Write(my[0][1]);

综合例子:

struct my
    {
        public hua yuanshe;
        public shu daxia;
    }
    enum hua
    {
        桃,
        杏,
        梅,
        方
    }
    enum shu
    {
    A,
    二,
    三,
    四,
    五,
    六,
    七,
    八,
    九,
    十,
    J,
    Q,
    K
    }

my[] x=new my[52];
            for (int j = 0; j < 4; j++)
            {
                for (int k = 0; k < 13; k++)
                {
                    x[j * 13 + k].yuanshe = (hua)j;
                    x[j * 13 + k].daxia = (shu)k;
                }
            }
            foreach (my k in x)
            {
                Response.Write(k.yuanshe + "\n" + k.daxia + "<br/>");
            }

桃 A
桃二
桃三
桃四
桃五
桃六
桃七
桃八
桃九
桃十
桃 J
桃 Q
桃 K
杏 A
杏二
杏三
杏四
杏五
杏六
杏七
杏八
杏九
杏十
杏 J
杏 Q
杏 K
梅 A
梅二
梅三
梅四
梅五
梅六
梅七
梅八
梅九
梅十
梅 J
梅 Q
梅 K
方 A
方二
方三
方四
方五
方六
方七
方八
方九
方十
方 J
方 Q
方 K

原文地址:https://www.cnblogs.com/shuyu/p/1704698.html