4.6.2 基本类型数组的初始化
4.6.2 基本类型数组的初始化
对于基本类型数组而言,数组元素的值直接存储在对应的数组元素中,因此,初始化数组时,先为该数组分配内存空间,然后直接将数组元素的值存入对应数组元素中。
程序示例 基本类型数组的初始化 示意图
下面程序定义了一个int
类型的数组变量,采用动态初始化的方式初始化了该数组,并显式为每个数组元素赋值
1 | public class PrimitiveArrayTest { |
上面代码的执行过程代表了基本类型数组初始化的典型过程。下面将结合示意图详细介绍这段代码的执行过程。
执行第一行代码int[] iArr;
时,仅定义一个数组变量,此时内存中的存储示意图如图4.5所示。
执行了int[] iArr;
代码后,仅在栈内存中定义了一个空引用(就是iArr
数组变量),这个引用并未指向任何有效的内存,当然无法指定数组的长度。
当执行iArr = new int[5];
动态初始化后,系统将负责为该数组分配内存空间,并分配默认的初始值:所有数组元素都被赋为值0,此时内存中的存储示意图如图4.6所示:
此时iArr
数组的每个数组元素的值都是0,当使用循环为该数组的每个数组元素依次赋值后,此时每个数组元素的值都变成程序显式指定的值。显式指定每个数组元素值后的存储示意图如图4.7所示:
从图4.7中可以看到基本类型数组的存储示意图,每个数组元素的值直接存储在对应的内存中。操作基本类型数组的数组元素时,实际上相当于操作基本类型的变量