在Java中,由于数组的大小是固定的,不能直接扩展数组的大小。但是,可以通过以下几种方法来“扩大”数组:
复制到新数组
int[] oldArray = {1, 2, 3};
int[] newArray = new int[oldArray.length + 2];
for (int i = 0; i < oldArray.length; i++) {
newArray[i] = oldArray[i];
}
使用`ArrayList`
`ArrayList`是一个动态数组,可以自动调整大小。
List
list = new ArrayList<>(); list.addAll(Arrays.asList(1, 2, 3));
list.add(4);
int[] newArray = list.toArray(new int);
使用Apache Commons Lang
`ArrayUtils.add`方法可以用于扩展数组。
import org.apache.commons.lang3.ArrayUtils;
int[] oldArray = {1, 2, 3};
int[] newArray = ArrayUtils.add(oldArray, 4);
使用Guava
Guava库提供了`Arrays.copyOf`方法来复制数组。
import com.google.common.reflect.TypeToken;
import com.google.common.reflect.TypeToken;
int[] oldArray = {1, 2, 3};
int[] newArray = Arrays.copyOf(oldArray, oldArray.length + 2);
以上方法都可以实现数组的“扩大”,但请注意,这些方法并不会改变原数组的引用,而是创建了一个新的数组。如果需要改变原数组的引用,可以考虑使用`System.arraycopy`方法将元素从一个数组复制到另一个数组。
int[] oldArray = {1, 2, 3};
int[] newArray = new int[oldArray.length * 2];
System.arraycopy(oldArray, 0, newArray, 0, oldArray.length);
以上方法可以帮助你在Java中“扩大”数组的大小