静态数组间的复制

深度拷贝 开辟了一个新的空间把得到的值存在那个空间里
两个数组的地址不一样
1 一维数组

int[] src={1,3,5,6,7,8};
int[] dest = new int[6];
System.arraycopy(src, 0, dest, 0, 6);


2 二维数组的深度复制 注: 一维数组下的深拷贝,对于二维数组只是浅拷贝!!
  
int[] src={{1,1},{3,3},{5,5},{6,6},{7,7},{8,8}};
int[][] dest = new int[6][2];
//分别对每一行进行深拷贝
for(int i = 0; i < src.length; i++){
System.arraycopy(src[i], 0,dest[i], 0, src[i].length);
}



JAVA中没有多维数组的概念,只有数组的数组,因此QPN是一个数组的数组,同理UQPN 也是。那么QPN 含有两个元素,分别指向两个数组的引用,而arrayCopy 就是负责把数组的内容copy 过去的,因此QPN的内容 (2 个引用) 被copy 到UQPN 中去了,因此对QPN做修改,QPN也会同样跟着变化
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值