一维数组
当需要在Java程序中记录单个数据内容时,则声明一个变量即可。
当需要在Java程序中记录多个类型相同的数据内容时,则声明一个一维数 组即可,一维数组本质上就是在内存空间中申请一段连续的存储单元。
数组是相同数据类型的多个元素的容器,元素按线性顺序排列,在Java语 言中体现为一种引用数据类型。
一维数组的声明方式
数据类型[] 数组名称 = new 数据类型[数组的长度];
int[] arr = new int[5]
调用数组的length属性可以获取数组的长度:
可以通过下标的方式访问数组中的每一个元素。需要注意的是:数组的 下标从0开始,对于长度为n的数组,下标的范围是0~n-1。
一维数组的初始化方式
基本类型的数组(数据元素为基本类型)创建后,其元素的初始值:byte、 short、char、int、long为0;float和double为0.0;boolean为false。
可以在数组声明的同时进行初始化,具体如下: 数据类型[] 数组名称 = {初始值1, 初始值2, ...};
int[] arr = new int[] {1, 2, 3, 4, 5}
数组的优缺点
- 可以直接通过下标(或索引)的方式访问指定位置的元素,速度很快。
- 数组要求所有元素的类型相同。
- 数组要求内存空间连续,并且长度一旦确定就不能修改。
- 增加和删除元素时可能移动大量元素,效率低。
遍历数组
int[] ns = { 1, 4, 9, 16, 25 };
for (int i=0; i<ns.length; i++) {
int n = ns[i];
System.out.println(n);
}
int[] ns2 = { 1, 4, 9, 16, 25 };
for (int n : ns2) {
System.out.println(n);
}
二维数组
二维数组本质上就是由多个一维数组摞在一起组成的数组,二维数组中 的每个元素都是一维数组,而一维数组中的每个元素才是数据内容。
二维数组的声明和初始化方式
数据类型[][] 数组名称 = new 数据类型[行数][列数];
数据类型[][] 数组名称 = {{元素1, 元素2,...}, ...};