组时,Jave会使每个数组元素初始化为一个默认值。但在许 多情况下,并不希望数组的初值为默认值,此时,就需要用 赋值语句来对数组进行初始化。 数组的初始化方式有两种: 一、像初始化简单类型一样自动初始化数组(不用new), 即在说明数组的同时进行初始化(称为静态初始化); 二、仅用new创建数组,让它取缺省值,到以后再为元素 赋值(称为动态初始化)。
例:int a[ ]={1,2,3,4,5}; //静态初始化 int list[ ] = new int[3]; //动态初始化 上面的第一个语句声明并创建了数组a,并且为数组每 个元素赋初值,使a[0]=1,a[1]=2,a[2],=3,a[3]=4,a[4]=5。 上面的第二个语句仅声明并创建了数组a,并未给数组 赋初值, 由Jave为数组元素默认初始化,于是得到三个元 素:list[0]=0, list[1]=0, list[2]=0。 由上可见,数组的静态初始化可由花括号“{}”括起的 一串由逗号分隔的表达式组成,逗号分隔数组中元素的值。 而在语句中不必明确指明数组的长度,因为它已经体现在 所给出的数据元素个数之中了,系统会自动根据所给的元 素个数为数组分配一定的内存空间,如上例中数组a的长度 自动设置为5。应该注意的是,“{}”中所有数据的类型必须 与数组的类型是相同的。
例: int a[ ][ ] = { {1}, {2,3}, {4,5,6} };
该语句声明了一个有6个元素的二维数组并初始化为: a[0][0]=1 a[1][0]=2 , a[1][1]=3 a[2][0]=4 , a[2][1]=5 , a[2][2]=6
3)二维数组元素的引用
对二维数组中每个元素,其引用方式为:
第二行是使用new操作符来构造数组并初始化(缺省值), 即在数组说明之后为数组元素分配存储空间,系统并为每个 数组元素都赋予一个初值,这个初值取决于数组的类型。所 有数值型数组元素的初值为0,字符型数组元素的初值为一 个不可见的ISO控制符(\u000),布尔型数组元素的初值为 时元素的初值 为null。数组一旦创建之后,就不能再改变其长度. 上面的二步可合并为一步: