<分区>
除了this quite old post ,我需要一些可以使用原语并为包含大量 HashSet
的应用程序提供加速的东西的 Integers
:
Set<Integer> set = new HashSet<Integer>();
所以人们提到像 Guava、Javalution、Trove 这样的库,但在基准测试和性能结果方面并没有对它们进行完美的比较,或者至少没有来自好的经验的好的答案。据我所知,许多人推荐 Trove 的 TIntHashSet
,但其他人说它不是那么好;有人说 Guava super 酷且易于管理,但我不需要美观和可维护性,只需要时间执行,所以 Python 的风格 Guava 回家了:) Javalution?我访问过该网站,对我来说太老了,因此很古怪。
库应该提供最好的时间,内存无关紧要。
看《Thinking in Java》,有创建自定义的想法HashMap
与 int[]
作为 key 。所以我想看到与 HashSet
类似的东西或者只是下载并使用一个很棒的库。
编辑(回应以下评论)
所以在我的项目中,我从大约 50 HashSet<Integer>
开始集合,然后我调用一个函数大约 1000 次,该函数内部最多创建 10 个 HashSet<Integer>
Collection 品。如果我更改初始参数,数字可能会呈指数增长。我只用 add()
, contains()
和 clear()
这些集合的方法,这就是选择它们的原因。
现在我要找一个实现了HashSet
的库或类似的东西,但由于自动装箱 Integer
会更快开销,也许还有其他我不知道的东西。事实上,我在输入数据时使用整数并将它们存储在 HashSet
中