在 Java 的构造函数中初始化数组
Mohammad Irfan
2023年10月12日
本教程介绍了如何在 Java 中的构造函数中初始化数组,并列出了一些示例代码来理解该主题。
数组是一种基于索引的数据结构,用于存储相似类型的数据。在 Java 中,我们可以使用数组来存储原始值和对象值。数组也是 Java 中的对象,并使用默认值进行初始化。例如,0 表示 int,0.0 表示浮点/双精度值,而 null 表示字符串/对象值。
如果将数组声明为实例变量,则在调用该对象时会使用默认值对其进行初始化。让我们看一些例子。
在 Java 的构造函数中初始化数组
如果使用默认值初始化数组,则在构造函数中初始化数组没有意义,因为 Java 隐式执行此操作。
在这个例子中,我们在类中声明了一个数组,然后在构造函数中初始化它,因此,当调用构造函数时,数组被初始化。请参考下面的示例。
public class SimpleTesting {
int a[];
public SimpleTesting() {
a = new int[] {0, 0, 0};
}
public static void main(String[] args) {
SimpleTesting st = new SimpleTesting();
System.out.println("Array Elements");
// Accessing elements
for (int i : st.a) {
System.out.println(i);
}
}
}
输出:
Array Elements
0
0
0
我们可以在不使用构造函数的情况下完成上述任务,并看到我们为两个代码示例获得了相同的输出。我们这里没有提到初始化值,但是 Java 隐式地为我们做了这件事。请参考下面的示例。
public class SimpleTesting {
int a[] = new int[3];
public static void main(String[] args) {
SimpleTesting st = new SimpleTesting();
System.out.println("Array Elements");
// Accessing elements
for (int i : st.a) {
System.out.println(i);
}
}
}
输出:
Array Elements
0
0
0
用新值在构造函数中初始化数组
如果你想设置除默认值之外的新值,使用构造函数初始化是一个好主意。在这个例子中,我们传递了其他值,并在调用构造函数时初始化数组。请参考下面的示例。
public class SimpleTesting {
int a[];
public SimpleTesting() {
a = new int[] {5, 5, 5};
}
public static void main(String[] args) {
SimpleTesting st = new SimpleTesting();
System.out.println("Array Elements");
// Accessing elements
for (int i : st.a) {
System.out.println(i);
}
}
}
输出:
Array Elements
5
5
5
在 Java 的构造函数中初始化数组
我们也可以在构造函数中创建一个数组,以避免声明和初始化两步过程。它将在单个语句中完成任务。请看,在这个例子中,我们在构造函数中创建了一个数组并同时访问它以显示数组元素。请参考下面的示例。
public class SimpleTesting {
public SimpleTesting() {
int a[] = {0, 0, 0};
System.out.println("Array Elements");
// Accessing elements
for (int i : a) {
System.out.println(i);
}
}
public static void main(String[] args) {
SimpleTesting st = new SimpleTesting();
}
}
输出:
Array Elements
0
0
0