数组列表和链接列表之间的区别

2022-09-03 02:05:47

可能的重复:
何时使用LinkedList<>而不是ArrayList<>?
何时在数组/数组列表上使用链表?

我什么时候应该使用arrayList,什么时候应该使用LinkedList?

我应该何时使用 和 ?TreeSetLinkedHashSetHashSet


答案 1
When should i use arrayList and when should I go for LinkedList?

Arraylist 像数组一样维护索引。因此,如果想要比 put 更频繁的 get 操作,那么 arraylist 是最好的选择。

LinkedList 维护指向元素的指针。你不能像在数组列表中那样对特定索引。但linklist的优势在于,它们不需要像arraylist那样来回移动来维护持续索引。因此,在linkedlist中获取操作的成本很高,因为您必须通过指针才能到达元素。但是与数组列表相比,put 操作是好的。你只需要连接到指针,就是这样。

When should I use TreeSet, LinkedHashSet and HashSet?

区别仅在于排序。treeset 元素需要维护由成员对象定义的特定顺序。


答案 2