gpt4 book ai didi

java - Java中将2个ArrayList浅拷贝到1个

转载 作者:太空宇宙 更新时间:2023-11-04 12:48:48 26 4
gpt4 key购买 nike

ArrayList<String> myString = new ArrayList<String>();
myString.add("string_1");
myString.add("string_2");

ArrayList<String> yourString = new ArrayList<String>();
yourString.add("string_11");
yourString.add("string_12");

ArrayList<String> string1 = myString;
ArrayList<String> string2 = yourString;

这将浅复制 myStringstring1yourStringstring2 .

所以,如果我这样做

myString.add("string_3");

string1.size()会给我3

如何浅复制 myStringyourString到 ArrayList 中说 string3 (例如 ArrayList<String> string3 = myString + yourString )?

最佳答案

为什么不维护三个列表:myString、yourString 和 ourString。

List<String> ourString = new ArrayList<String>();
ourString.addAll(myString);
ourString.addAll(yourString);

现在,您的 string3 数组可以引用第三个列表。现在,每当您更新 myString 或 yourString 时,您都可以相应地更新 ourString(基本上,执行两次添加操作而不是一次,与执行深层复制时的 O(n) 相比,这仍然是 O(1))。这也将根据需要更新 string3。

关于java - Java中将2个ArrayList浅拷贝到1个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36046434/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com