gpt4 book ai didi

java - 从一个列表复制到另一个

转载 作者:行者123 更新时间:2023-12-03 23:05:37 26 4
gpt4 key购买 nike

我有一个成对列表。如果我使用 equal,它会复制每一组吗?

List<HashSet<Pair>> list1 = new ArrayList<HashSet<Pair>>();
List<HashSet<Pair>> list2 = new ArrayList<HashSet<Pair>>();

list1.add(0, new HashSet<Pair>());
list1.add(1, new HashSet<Pair>());
list1.add(2, new HashSet<Pair>());
list1.add(3, new HashSet<Pair>());

如果我执行 list2 = list1,它是否完美复制?因为当我使用它时,它会崩溃。

Iterator<Pair> it1 = list2.get(0).iterator();
Iterator<Pair> it2 = list2.get(1).iterator();
Iterator<Pair> it3 = list2.get(2).iterator();
Iterator<Pair> it4 = list2.get(3).iterator();

最佳答案

list2 = list1

此赋值只是将引用 list2 赋值给指向与 list1 相同的列表。 (请注意,只有 一个 列表有两个对它的引用。)如果你想复制列表,你需要使用复制构造函数:

list2 = new ArrayList<HashSet<Pair>>(list1);

关于java - 从一个列表复制到另一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11602589/

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