java - 在集合中存储唯一项

时间:2017-12-19 23:29:54

标签: java collections

我有一个循环遍历项目集合,并且只在新集合中存储唯一项目。 对于新的唯一项集合,我主要选择ArrayList数据结构。但另一种方法是使用ArrayList并调用contains方法来检查<link>是否已包含该项目。 哪一个更快,开销更少?

1 个答案:

答案 0 :(得分:0)

我建议使用LinkedHashSet。它是为您所需要的。每次需要插入内容时搜索整个ArrayList(O(n) every time))执行速度非常慢。您可以使用contains方法,但它仍然比插入LinkedHashSet慢得多,因为在后台O(n)。要非常准确地了解性能,您需要检查您的尺寸和操作。如果您需要插入几次然后阅读很多次,那么ArrayList可能会变得更好。但是如果你插入很多并且阅读次数较少,那么LinkedHashSet会更快。

相关问题