1、System.arraycopy(src, 1, dest, 0, 6);
src为原数组,1为复制的起始位置,dest为目的数组,0为目的数组放置的起始位置,6为复制的长度
2、dest=(int[]) src.clone();//使用clone创建
dest为目的数组,src为原数组,clone复制实现数组全部复制
3、dest=Arrays.copyOf(src, 2);//Arrays.copyOf
src为原数组,2为复制的位数
4、dest=Arrays.copyOfRange(src, 1, 3);//Arrays.copyOfRange
src为原数组,1为起始下标,3为结束下标
综上为数组复制的常用方法,使用时可根据具体情况选择不同方法。
实例:
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] src={1,3,5,6,7,8};
int[] dest = new int[6];
System.arraycopy(src, 0, dest, 0, 6);//System.arraycopy
for(int i:dest){
System.out.print(i+"\t");
}
System.out.println();
dest=(int[]) src.clone();//使用clone创建
for(int i:dest){
System.out.print(i+"\t");
}
System.out.println();
dest=Arrays.copyOf(src, 2);//Arrays.copyOf
for(int i:dest){
System.out.print(i+"\t");
}
System.out.println();
dest=Arrays.copyOfRange(src, 1, 3);//Arrays.copyOfRange
for(int i:dest){
System.out.print(i+"\t");
}
}
结果: