Java 类数组的初始化和使用37


在 Java 中,数组是一种用于存储相同数据类型元素的有序集合。类数组是包含类的实例的数组。初始化类数组时,需要指定数组的长度,并在创建数组后为其元素分配内存。

静态初始化

静态初始化只在类加载时执行一次。它使用 static 修饰符,如下所示:```java
public class MyClass {
private static MyClass[] myArray = new MyClass[10];
}
```

此代码将创建一个长度为 10 的 myArray 类数组。它将在类加载时自动初始化,并且数组中的所有元素都是 null。

实例初始化

实例初始化在每次创建类的实例时执行。它使用 new 关键字,如下所示:```java
public class MyClass {
private MyClass[] myArray = new MyClass[10];
public MyClass() {
// 实例初始化代码
}
}
```

此代码将创建一个长度为 10 的 myArray 类数组。它将在创建 MyClass 实例时初始化,并且数组中的所有元素都是 null。

填充数组

在初始化数组后,可以使用循环或数组赋值语法填充其元素:```java
for (int i = 0; i < ; i++) {
myArray[i] = new MyClass();
}
// 等价的数组赋值语法
myArray = new MyClass[] { new MyClass(), new MyClass(), ... };
```

多维类数组

Java 允许创建多维类数组。每个维度都使用方括号表示,如下所示:```java
public class MyClass {
private MyClass[][] myArray = new MyClass[3][4];
}
```

此代码将创建一个 3x4 的二维类数组。它将在类加载时自动初始化,并且数组中的所有元素都是 null。

访问数组元素

可以使用方括号访问类数组中的元素:```java
MyClass element = myArray[index];
```

其中 index 是数组索引。

最佳实践

以下是使用类数组时的一些最佳实践:* 尽可能使用静态初始化。
* 避免创建大型数组,因为它们会消耗大量内存。
* 使用循环或数组赋值语法填充数组,而不是逐个元素地分配。
* 避免在数组上调用 clone() 方法,因为它会创建数组对象的新副本,从而可能导致内存泄漏。

2024-12-02


上一篇:使用 Java 为源代码添加色彩缤纷的着色

下一篇:Java 方法调用次数分析