java.util.Collection的经典集合操作

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (30)

在java.util.Collection类中是否有经典集合操作的内置功能?我的具体实现是ArrayList,但这听起来像是应该适用于Collection的所有子类的东西。我正在寻找像这样的东西:

ArrayList<Integer> setA ...
ArrayList<Integer> setB ...
ArrayList<Integer> setAintersectionB = setA.intersection(setB);
ArrayList<Integer> setAminusB = setA.subtract(setB);

经过一番搜索,我只能找到本土解决方案。另外,我意识到我可能会混淆“集合”的想法与“集合”的想法,不允许和允许重复分别。也许这只是Set接口的功能?

在没有人知道任何内置功能的情况下,也许我们可以将其用作标准实践Java集操作代码的存储库?我想象这个车轮已经被无数次改造了。

提问于
用户回答回答于

相交完成Collection.retainAll; 减去Collection.removeAll; 与...结合Collection.addAll。在每种情况下,Set行为就像一个集合,一个List行为就像一个列表。

作为可变对象,它们在适当的位置运行。如果你想保留未改变的原始可变对象,你需要显式复制。

用户回答回答于

该集合类似乎有你在寻找什么。它有一个交集方法和一个差异方法。

如果您有兴趣,此演示文稿可能是您想要观看的内容。它指的是Google Collections,它是Guava的原始名称。

扫码关注云+社区