在Java中,当你对数组进行扩容后,新分配的空间可以通过以下两种方式进行填充:
默认填充:
新分配的空间会被自动填充为元素的默认值。对于基本数据类型,默认值是0;对于引用类型,默认值是null。
自定义填充:
你可以使用`Arrays.fill()`方法来指定一个特定的值来填充新分配的空间。
下面是一个使用`Arrays.fill()`方法进行自定义填充的例子:
```java
import java.util.Arrays;
public class ArrayFilling {
public static void main(String[] args) {
int[] originalArray = new int; // 创建一个长度为5的整型数组
Arrays.fill(originalArray, 0); // 使用0填充数组
// 输出原始数组
System.out.println("Original array:");
for (int i = 0; i < originalArray.length; i++) {
System.out.print(originalArray[i] + " ");
}
// 扩容数组,例如将长度翻倍
int[] newArray = new int[originalArray.length * 2];
Arrays.fill(newArray, 1); // 使用1填充新数组
// 输出扩容后的数组
System.out.println("\nResized array:");
for (int i = 0; i < newArray.length; i++) {
System.out.print(newArray[i] + " ");
}
}
}
输出结果将会是:
```
Original array:
0 0 0 0 0
Resized array:
1 1 1 1 1 1 1 1 1 1 1 1 1
请注意,上述代码示例中的数组扩容是手动进行的,实际上在Java中,当你使用集合类(如`ArrayList`)时,扩容操作是自动处理的。如果你需要对集合进行扩容并填充,可以使用集合类的相关方法,例如`ArrayList`的`ensureExplicitCapacity`和`add`方法。