如何在Java中调整数组大小?
数组无法在Java中动态调整大小。
一种方法是使用java.util.ArrayList(或java.util.Vector)代替本机数组。
另一种方法是重新分配大小不同的数组,然后将旧数组的内容复制到新数组。
例:
class ResizableArray {
public static void main (String[] args) {
int[] a = {1, 2, 3};
a = (int[])resizeArray(a, 5);
a[3] = 4;
a[4] = 5;
for (int i=0; i<a.length; i++)
System.out.println(a[i]);
}
private static Object resizeArray (Object oldArray, int newSize) {
int oldSize = java.lang.reflect.Array.getLength(oldArray);
Class elementType = oldArray.getClass().getComponentType();
Object newArray = java.lang.reflect.Array.newInstance(elementType, newSize);
int preserveLength = Math.min(oldSize, newSize);
if (preserveLength > 0)
System.arraycopy(oldArray, 0, newArray, 0, preserveLength);
return newArray;
}
}输出:
1 2 3 4 5
热门推荐
10 诗词送行祝福语大全简短
11 新房开工吉日祝福语简短
12 50多岁生日简短祝福语
13 安徽疫情祝福语简短英语
14 农民朋友发财祝福语简短
15 对生活祝福语简短精辟
16 搬家词简短祝福语朋友
17 女神结婚快乐祝福语简短
18 文学短句祝福语大全简短