您的位置:首页 > 其它

认真CS丨初始化数组元素、foreach语句

2018-02-14 22:57 411 查看
using System;     //初始化矩形数组

class MyClass
{
    static void Main()
    {
        int[] a;
        a = new int[4];

        MyClass mc = new MyClass();

        a[0] = 10;
        Console.WriteLine("{0}", a[0]);

        int[,,] a1 = new int[4,3,2]   //也可不写4 3 2,靠后面初始化推断出立方体。
        {
            { {1,2 },{3,4 },{5,6 } },
            { {1,2 },{3,4 },{5,6 } },
            { {1,2 },{3,4 },{5,6 } },
            { {1,2 },{3,4 },{5,6 } }
        };
        Console.WriteLine(a1[0,2,1]);  //从[0,0,0]开始计数!

        tip: for (int i = 0; i < 4; i++)
            for (int j = 0; j < 3; j++)
                for (int k = 0; k < 2; k++)
                    Console.WriteLine("{0}",a1[i,j,k]);

        var a2 = new []{1,2,3 };  //隐式初始化数组类型,靠初始化语句来推断数组类型!
         
        string[,] a3 = new string[1,2] { { "a", "b" } };  //1,立方体高度  2,立方体宽度
        var a4 = new[] { "a", "b" };

        int[,] Arrayx = new int[2,2] { {1,1 },{1,1 } };

        int[][] Arr = new int[3][];
        Arr[0] = new int[] { 1 };
        Arr[1] = new int[] { 1 };
        Arr[2] = new int[] { 1 };
    }
}

using System;       //foreach语句

class MyClass
{
    class MyClass1
    {
        public int val = 0;
    }

    //static int[] a = new int[3] { 1, 2, 3 };
    static void Main()
    {
        int[] a = new int[3] { 1, 2, 3 };  //值类型数组
        foreach (int test in a)
        {
            Console.WriteLine(test);
  //          test++;     无法为test赋值,因为它是迭代变量。迭代变量的值是只读的,但对于值类型数组和引用类型数组结果是不一样的。
        }

        MyClass1[] mc = new MyClass1[4];      //数组成员实现步骤:先实例化数组结构,再对数组每个成员进行实例化!
        for (int i = 0; i < 4; i++)
        {
            mc[i]= new MyClass1();
            mc[i].val = i+1;     //mc是一个数组了,不再是mc.val
            Console.WriteLine("{0}",mc[i].val);
        }
    }
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐