数组
数组的本质是一个相同数据类型的元素集合。元素是数组的组成部分,数组中每一个元素都可以使用唯一的索引值来访问,这个索引值也可以叫做数组下标。数组是很多集合类的底层存储结构,在了解java集合类之前大家先了解一下数组吧。
数组初始化
数组的声明语法为
1 | // type为类型 arrayName为数组变量名称 |
在进行数组初始化时,有静态初始化和动态初始化两种方式。
静态初始化
静态初始化是指在初始化数组时为数组的每个元素赋值,由元素的个数来决定数组的长度
1 | int[] numbers = {1,2,3}; |
动态初始化
动态初始化是指在初始化数组时指定数组长度,系统为每个元素分配初始值,之后再按照需要为每个元素修改值。
1 | int[] numbers = new int[3];// 此时numbers中的元素为 0,0,0 |
注意:数组的索引是从0开始的
二维数组
上面说的数组是一个一维数组,java可以构建多维数组,其实本质上来说还是一维数组,只是数组中的元素存储的还是数组而已。
二维数组可以看做是一个表格,有行有列,二维数组中的每一个元素就代表了确定行列的一个单元格
二维数组的声明为
1 | // type为类型 arrayName为数组变量名称 |
静态初始化
1 | int[][] numbers = {{1,2,3},{1,2,3}}; |
动态初始化
1 | int[][] numbers = new int[3][3];// 此时numbers中的每个元素都为0 |
非矩形数组
由于第二个索引代表的是该索引位置对应的一维数组,每个索引下的数组长度不同时就是非矩形数组。
静态初始化
1 | int[][] numbers = {{1,2,3},{1,2,3,4}}; |
动态初始化
1 | // 第二个索引长度不指定,因为每个是不同的 |