static void ArrayDemo() {
// 声明一个指向数组的引用
Int32[] ia; // 默认值为 null
ia = new Int32[100];
ia = new Int32[] { 1, 2, 3, 4, 5 };
.
.
.
这是一个具有数组的代码的例子,所以我会略为提一下。在这个例子里,首先声明一个指向Int32s数组的引用,随意取一个"ia"用于整数数组。它只不过是一个指针,具有32位(bit)或64位值,如果它们仍在64位系统上运行,总是会被初始化为null,引用总是被初始化为null直到明确地设置它为止。下面一行,我随意new(构造)了一个有100个Int32值的数组。new返回一个引用,接着我把这个引用存到"ia"变量中。下一行只不过演示了另外一种构造的方式,这里我又new了一个Int32s数组,这种专门的C#句法以一个左大括号开始,后面跟着数组的元素,当然元素之间要用逗号分开,然后是一个右括号。当您第一次见到这种句法时,会觉得它有点笨拙。这只不过是new的另外一种用法,当然它可以推算出元素的个数。
ROBERT HESS: 而这只不过是预定义了值:
.
.
.
// 显示数组的内容
foreach (Int32 x in ia)
Console.Write("{0} ", x);
//使用多维数组
StringBuilder[,] sa = new StringBuilder[10][5];
for (int x = 0; x < 10; x++) {
for (int y = 0; y < 5; y++) {
sa[x][y] = new StringBuilder(10);
}
}
// 使用数组的数组(jagged arrays)
Int32 numPolygons = 3;
Point[][] polygons = new Point[numPolygons][];
polygons[0] = new Point[3] { ... };
polygons[1] = new Point[5] { ... };
polygons[2] = new Point[10] { ... };
}
JEFFREY RICHTER:是的,很正确。这就是foreach,它出现在代码的第一行。"foreach"是C#句法,我肯定所有的.NET语言都会提供此句法,它是一个极其通用的编程典范,用这种方式,就可以遍历集合里的元素。因此,这里的foreach Int32 x中,"x"是一个变量,Int32当然是一种类型,接着我把引用赋予了数组。foreach将会自动推算出数组中有多少个元素,并且每当循环到Console.Write时,就会显示出元素的值,然后再移向下一个元素。
优质内容筛选与推荐>>
1、js权威指南9-1例子:实例属性、实例方法、类属性、类方法2、Day14 字符编码3、2-27-2012 笔记 Linux 使用 短密码, gcc 编译 连接 动态库,php exec 错误4、AOJ-542-Window/POJ-2823-Window5、css实现垂直水平居中的5种方法