Java中最快的集合是什么?
我只需要添加和删除操作,顺序并不重要,equals元素不是问题,没有什么比添加和删除更重要。
没有大小限制也很重要。
这些集合将在他的内部拥有对象。
目前我使用ArrayDeque,因为我看到这是更快的队列实现。
发布于 2011-05-26 03:33:48
您可以使用java.util.LinkedList
-它是双链和环状的,所以添加到一端和从另一端取是O(1)
无论您选择哪种实现,都可以通过Queue
接口引用它,以便在它不适合您的情况时轻松地进行更改(当然,如果您首先需要的是队列)
更新:科林的回答显示了一个基准测试,得出的结论是ArrayDeque
更好。两者都有O(1)操作,但是LinkedList
创建了新的对象(节点),这会稍微影响性能。因为两者都是O(1),所以我不认为选择LinkedList
是错误的。
发布于 2020-08-24 16:45:25
ConcurrentLinkedDeque是多线程队列的最佳选择
https://stackoverflow.com/questions/6129805
复制相似问题