介绍
在本实验中,你将学习在 Java 中初始化数组的不同方法。你还将学习如何使用 Scanner
类获取用户输入,如何使用嵌套循环初始化二维数组,如何在声明时初始化数组,以及如何使用 Arrays.fill()
、Arrays.setAll()
和 ArrayUtils.clone()
等不同方法。
在本实验中,你将学习在 Java 中初始化数组的不同方法。你还将学习如何使用 Scanner
类获取用户输入,如何使用嵌套循环初始化二维数组,如何在声明时初始化数组,以及如何使用 Arrays.fill()
、Arrays.setAll()
和 ArrayUtils.clone()
等不同方法。
在初始化数组之前,我们必须知道如何声明数组。声明意味着定义变量名称以及将存储在数组中的元素的数据类型。声明数组的通用语法如下代码所示。
datatype[] variableName;
初始化数组是为数组元素设置初始值。我们可以使用下面解释的不同方法来初始化数组。
要将数组的所有元素初始化为 0,我们只需要声明数组并使用 new
关键字将其初始化为所需的大小。Java 默认会将所有数组元素初始化为其默认值(整数为 0,字符串为 null,布尔值为 false 等)。
int[] intArray = new int[5];
要逐个初始化数组的每个元素,我们可以使用 for 循环来初始化数组的索引。
int[] intArray = new int[5];
for(int i = 0; i < intArray.length; i++) {
intArray[i] = i + 1;
}
我们可以通过一行代码同时声明并初始化数组。
int[] intArray = {1, 2, 3, 4, 5};
要通过用户输入初始化数组,我们可以使用 Scanner 类从用户那里读取输入。
Scanner input = new Scanner(System.in);
System.out.print("Enter array length: ");
int length = input.nextInt();
int[] intArray = new int[length];
for(int i = 0; i < length; i++) {
System.out.print("Enter element " + (i + 1) + ": ");
intArray[i] = input.nextInt();
}
input.close();
我们可以使用嵌套循环来初始化二维数组。
int[][] intArray = new int[3][3];
for(int i = 0; i < intArray.length; i++) {
for(int j = 0; j < intArray[i].length; j++) {
intArray[i][j] = i + j;
}
}
我们可以使用 Arrays.fill()
方法将数组初始化为特定值。
int[] intArray = new int[5];
Arrays.fill(intArray, 5);
我们可以使用 Arrays.setAll()
方法,借助生成器函数(Generator Function)来初始化数组。
int[] intArray = new int[5];
Arrays.setAll(intArray, (index) -> index * index);
我们可以使用 ArrayUtils.clone()
方法来创建现有数组的副本。
int[] intArray = new int[] {1, 2, 3, 4, 5};
int[] copyArray = ArrayUtils.clone(intArray);
我们可以使用 Arrays.copyOf()
方法来创建现有数组的副本。
int[] intArray = new int[] {1, 2, 3, 4, 5};
int[] copyArray = Arrays.copyOf(intArray, 8);
在本实验中,你学习了在 Java 中初始化数组的不同方法,包括使用 for 循环、同时声明和初始化、使用 Scanner 类获取用户输入、在声明时初始化、使用 Arrays.fill()
和 Arrays.setAll()
方法,以及使用 ArrayUtils.clone()
和 Arrays.copyOf()
方法复制数组。现在,你可以根据程序需求选择多种方式来初始化数组。