先看定义
其中看这样一个具体的描述片段
从定义中看以看出,Arrays中的copyOf具有扩充数组的功能,其中original为待扩充的原始数组,newLength为需要扩充的容量的大小,方法不会直接在原数组中直接修改,而是返回新的一个数组,所以copyOf具有返回值。
具体的实现过程如下:
import java.util.Arrays;
public class CopyOf
{
private Object[] objs;
public CopyOf() {
// TODO 初始化数组
objs = new Object[10];
}
void testCopyOf(){
System.out.println("原数组的长度为:"+this.objs.length);
printObjs();
this.objs = Arrays.copyOf(objs, 20);
System.out.println("\n\n现在数组的长度为:"+this.objs.length);
printObjs();
this.objs = Arrays.copyOf(objs, 3);
System.out.println("\n\n现在数组的长度为:"+this.objs.length);
printObjs();
this.objs = Arrays.copyOf(objs, 10);
System.out.println("\n\n现在数组的长度为:"+this.objs.length);
printObjs();
}
void printObjs(){
for (int i = 0; i < objs.length; i++) {
System.out.print(objs[i]+" ");
}
}
public static void main(String[] args) {
CopyOf
copyOf = new CopyOf
();
for (int i = 0; i < copyOf.objs.length; i++) {
copyOf.objs[i] = (int)(Math.random()*100);
}
copyOf.testCopyOf();
}
}