Java数组扩容后,新分配的空间有两种填充方式:默认填充为元素默认值(基本类型为0,引用类型为null);自定义填充:通过Arrays.fill()方法指定填充值。

Java数组扩容后的填充方式
当Java数组达到其容量时,需要进行扩容以容纳更多元素。扩容后,新分配的数组空间需要进行填充。
填充方式
Java数组扩容后,有两种主要方法可以填充新分配的空间:
立即学习“Java免费学习笔记(深入)”;
- 默认填充:扩容后,新分配的空间将被初始化为数组元素的默认值。对于基本类型数组,默认值是0。对于引用类型数组,默认值是null。
-
自定义填充:在某些情况下,可能需要在扩容后用自定义值填充新空间。这可以通过在扩容代码中使用
Arrays.fill()方法来实现。Arrays.fill()方法接受数组和一个填充值作为参数,并用指定的值填充数组中从指定索引到末尾的所有元素。
示例
下面的示例展示如何自定义填充扩容后的数组:
int[] array = {1, 2, 3};
// 扩容数组
array = Arrays.copyOf(array, array.length * 2);
// 使用 Arrays.fill() 填充新空间
Arrays.fill(array, array.length / 2, array.length, -1);
System.out.println(Arrays.toString(array)); // 输出 [1, 2, 3, -1, -1, -1, -1]在这个示例中,数组 array 从长度为3扩容到长度为6。使用 Arrays.fill() 方法将新分配的空间填充为-1。结果是,扩容后的数组包含原数组中的元素,后跟三个-1。











