java数组深拷贝怎么实现

353
2023/12/15 19:25:44
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Java中,数组是引用类型,所以直接对数组进行赋值或传递参数时,实际上只是复制了数组的引用。为了实现数组的深拷贝,可以使用以下方法:

  1. 使用Arrays.copyOf()方法进行拷贝。
int[] originalArray = {1, 2, 3, 4, 5};
int[] copiedArray = Arrays.copyOf(originalArray, originalArray.length);
  1. 使用System.arraycopy()方法进行拷贝。
int[] originalArray = {1, 2, 3, 4, 5};
int[] copiedArray = new int[originalArray.length];
System.arraycopy(originalArray, 0, copiedArray, 0, originalArray.length);
  1. 使用循环遍历进行赋值。
int[] originalArray = {1, 2, 3, 4, 5};
int[] copiedArray = new int[originalArray.length];
for (int i = 0; i < originalArray.length; i++) {
    copiedArray[i] = originalArray[i];
}

无论使用哪种方式,都会创建一个新的数组对象,并将原始数组的元素复制到新数组中,从而实现数组的深拷贝。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: java range函数如何使用