Алексей Asked:2020-08-31 18:53:48 +0000 UTC2020-08-31 18:53:48 +0000 UTC 2020-08-31 18:53:48 +0000 UTC 复制一个 ArrayList 772 有ArrayList价值观。 问题:如何在没有循环的情况下完全复制数组的值? ArrayList a; ArrayList b; a = b;// Присвоить все значения b в этот массив. java 4 个回答 Voted Best Answer Denis 2020-08-31T19:04:04Z2020-08-31T19:04:04Z 你可以使用方法Collections.copy(destination, source)(缺点是你需要设置你ArrayList b想要的尺寸,否则它会发誓): Collections.copy(b,a); 在帮助下clone()(ideone上的示例): ArrayList<String> b = (ArrayList<String>)a.clone(); 使用构造函数: ArrayList<String> a; ArrayList<String> b = new ArrayList<String>(a); 使用方法addAll(): ArrayList<String> a; ArrayList<String> b = new ArrayList<String>(); b.addAll(0, a); Ksenia 2020-08-31T19:04:57Z2020-08-31T19:04:57Z ArrayList<String> a = new ArrayList(Arrays.asList("abc", "mno")); ArrayList<String> b; b = (ArrayList<String>) a.clone(); 你也可以这样做: ArrayList<String> b = new ArrayList<String>(a); Komdosh 2020-08-31T18:56:21Z2020-08-31T18:56:21Z ArrayList a; ArrayList b; a=b.clone(); Сергей Васильев 2020-12-11T04:04:17Z2020-12-11T04:04:17Z 工作表存储对对象的引用,因此它们被复制,即 通过新工作表,您实际上是在处理旧对象。如果要传输和复制值,首先需要创建一个新对象来使用new. 例如: ArrayList<String> toCopy = new ArrayList<>(); toCopy.add("Something"); ArrayList<String> copy = new ArrayList<>(); copy.add(new String(toCopy.get(0)));
你可以使用方法
Collections.copy(destination, source)(缺点是你需要设置你ArrayList b想要的尺寸,否则它会发誓):在帮助下
clone()(ideone上的示例):使用构造函数:
使用方法
addAll():你也可以这样做:
工作表存储对对象的引用,因此它们被复制,即 通过新工作表,您实际上是在处理旧对象。如果要传输和复制值,首先需要创建一个新对象来使用
new.例如: