C#的数组
这里主要记录是二维数组,交错数组和参数数组。
二维数组:这个数组写法和java有些不同,但是理解方式是相同的,二位数组可以看成矩形。
int[,] i = new int[2,3]{ {1,1,1}, {1,1,1} }; for (int y=0;y<2;y++) { for (int x=0; x < 3; x++) { Console.WriteLine("int[{0},{1}]"+i[y,x],y,x); } }
结果:
int[0,0]1 int[0,1]1 int[0,2]1 int[1,0]1 int[1,1]1 int[1,2]1
交错数组:交错数组算是一维数组,本质上它就是数组的嵌套,写法类似java的二位数组。
int[][] i = new int[2][] { new int[] {1,2} , new int[] {1,2,3}}; for (int x = 0; x < i.Length; x++) { for (int y = 0; y < i[x].Length; y++) { Console.WriteLine("i[{0}][{1}]:"+i[x][y],x,y); } }
交错数组和二位数数组很相似,但是不同点能从本身的定义方式体现出来,交错数组能长短不一样,但二位数组必须子数组长短要一致(不在[ ]定义,也要一致)。
参数数组:参数数组是可变的数组,关键词是params;有时,当声明一个方法时,您不能确定要传递给函数作为参数的参数数目。
class VariableArray { public void SumElements(params int[] arr) { int? sum = 0; foreach (int i in arr) { sum += i; } Console.WriteLine(sum); } } [STAThread] static void Main() { VariableArray v = new VariableArray(); //v.SumElements(1, 2 ); v.SumElements(new int[] { 1,2 }); } }
结果是3