二维数组与交错数组

来源:互联网 发布:放逐之城4.5数据 编辑:程序博客网 时间:2024/05/21 06:27

一直对多维的数组不是很感冒,今天我决定彻底的把它搞明白!!

首先搞清楚二维数组在C#和C++中的区别:

int[,] 是二维数组,它就是传统意义上 n x m 的表,和 C++ 里的 int[][] 是一个意思。

int[][] 是交错数组,为不定数组,是一个一维数组,只是在一维数组里的每个元素就嵌套一个一维数组。与 C++ 里的 int[][] 不同。它其实是一个 int[] 里嵌套着 int[],可以理解为 (int[])[]。

如下图所示:


 二维数组的初始化和赋值:

·初始化赋值:int[,] a = new int[,] { { 1, 2, 3 }, { 4, 5, 6 } };

         初始化大小:int[,] b=new[10,10];可使用循环赋值;

for(int i=0;i<10;i++){

for(int j=0;j<10;j++){

a[i,j]=i+j;

}

}

交错数组的初始化和赋值:(其元素必须初始化后才能使用!否则为null)

           初始化: int [] [] a=new int[10][];

声明并初始化 int[][] a=new int[][]{new int[]{1,2,3},new int[]{1,2},new int[]{4,5,6}};

   采用索引赋值法,给单个元素赋值 a[2][0] = 5;

  直接赋值法:a[2]=new int[]{1,2,3};



0 0
原创粉丝点击