ArrayList、ArrayDeque内部以数组的形式保存集合中的元素,因此随机访问元素时有较好的性能;而LinkedList内部以链表的形式来保存集合中的元素,因此随机访问集合中的元素时虽然性能较差,但在插入、删除元素时性能非常出色(只需要改变指针所指的地址即可 ...
如果需求只是队列,优先考虑 ArrayDeque ;如果需求是按下标读取和尾部追加,优先考虑 ArrayList。 只有当你明确需要链表节点语义,并且插入删除位置已经通过迭代器或节点引用得到时, LinkedList 才可能有价值。