声明数组
int[] myArray;
初始化数组
- 数组是引用类型,为数组里的4个int开辟的内存位置在托管堆上
myArray = new int[4];
- 初始化的时候,还可以顺手为用初始化器4个int赋值
{},这就是初始化器
- 初始化器只能在声明时使用,不能在声明后使用
以下为三种用初始化器,来为数组的每个元素赋值的方式:
myArray = new int[4] {4, 7, 11, 2};
- 初始化加赋值的时候,不指定数组大小也可以,编译器会自动统计元素个数
myArray = new int[] {4, 7, 11, 2};
myArray = {4, 7, 11, 2};
访问数组
- 可以用索引器访问其中元素
[],这就是索引器
- foreach语句,是利用IEnumerable和IEnumerator接口,遍历数组
数组的内存结构
- myArray这个变量存储在栈上,其内容是托管堆中的一个内存地址,该内存地址上的内容为数组第一个元素。
- 因此可知,无论值类型还是引用类型,数组元素都存储在托管堆上
必须注意:
- 元素为引用类型的数组,使用元素之前,一定得确保已赋值,否则会有NullReferenceException