优化ArrayList.removeAll

Ric*_*ton 9 java arraylist removeall

很多人都说ArrayList.removeAll大尺寸阵列真的很慢.

文章提供了两种优化的解决方案到ArrayList.removeAll速度,但需要在类中实现它们,并且不能在外部使用的修复.

有没有办法应用这种修复,而不是复制ArrayList源代码并使用我自己的版本?

编辑:我想我应该添加我对此的需求,因为如果没有ArrayList.removeAll,可能有办法做我想要的.

我有两个70,000 longs每个列表.它们几乎完全相同,但是一个列表中有第二个列表没有的更多数字,我想找到它们.我知道找到它们的唯一方法就是first.removeAll(second)找到差异.还有另外一种方法吗?

Mil*_*ous 9

如何使用具有更好删除时间的数据结构,例如HashSet或TreeSet?因此使用arraylist的主要原因是访问记录的快速访问时间O(1).但是,如果你想设置差异,那么也许你应该使用集合.只是一个想法.