如果有那么两全其美的方法的话ArrayList和LinkedList早就没人用了。
如果你的数据量小的话,比如数量不到几十万的话,根本就不用考虑性能问题,用起来没有任何区别。
特别大的数据量可以考虑用一个装着多个ArrayList的LinkedList,插入的时候只需要插入到一个比较小的ArrayList里,遍历的时候大部分时间都在分别的ArrayList里进行。
另一个叫作图书馆的方法是在生成ArrayList的时候预先留好一些空位以便以后插入,就好比图书馆的书架不总是满的一样。
如果你的数据没有顺序的话可以用ArrayList快速插入删除。首先因为没有顺序所以插入可以直接插到最后。而删除的时候把最后一个东西和要删除的东西对调,然后删除最后一个东西。 |