Java基础-05-数组
数组主要用来存放同一数据类型的集合。可以通过一个整型下标来访问到数组中的元素,若a是一个数组,a[i]表示的是数组中下标为i的整数。
数组的声明
dataType[] arrayRefVar; // 首选的方法 或
dataType arrayRefVar[]; // 效果相同,但不是首选方法
举例:
int[] arr1; // 声明了一个整型的数组 首选方法
int arr2[]; // 声明了一个整型的数组
以上只是声明了一个变量arr1,并没有将arr1初始化为一个真正的数组。
数组的初始化
dataType[] arrayRefVar = new dataType[arraySize];
举例:
double[] arr = new double[10];
- 以上代码声明了一个长度为 10 的double数组
- 创建一个数字数组时, 所有元素都初始化为 0。boolean 数组的元素会初始化为 false。对象数组的元素则初始化为一个特殊值 null, 这表示这些元素(还)未存放任何对象。
- 数组的元素是通过索引访问的。数组索引从 0 开始,所以索引值从 0 到 arrayRefVar.length-1
- 如果访问arr[10],系统会报出数组越界的异常(array index out of bounds)
- 数组一旦被创建,其长度就不能被更改。
在 Java中, 提供了一种创建数组对象并同时赋予初始值的简化书写形式
double[] myList = {1.9, 2.9, 3.4, 3.5};
遍历数组
for循环遍历
double[] myList = {1.9, 2.9, 3.4, 3.5};
for(int i = 0;i < myList.length;i++){
System.out.println(myList[i]);
}
增强for循环
增强for循环又称for-each
double[] myList = {1.9, 2.9, 3.4, 3.5};
for (double value : myList) {
System.out.println(value);
}
通过Arrays类中的方法
double[] myList = {1.9, 2.9, 3.4, 3.5};
System.out.println(Arrays.toString(myList));
多维数组
多维数组可以看成数组的数组,如
String[][] str = new String[3][4];
int[][] magicSquare = {
{16, 3, 2, 13},
{5, 10, 11, 8},
{9, 6, 7, 12},
{4, 15, 14, 1}
};
// 遍历
for (int i = 0; i < magicSquare.length; i++) {
for (int j = 0; j < magicSquare[i].length; j++) {
int oldBalance = magicSquare[i][j];
System.out.println(oldBalance);
}
}
参考 菜鸟教程 《Java核心技术卷1》