ArrayList或LinkedList

Lea*_*ner 1 java

可能重复:
ArrayList与LinkedList
ArrayList和LinkedList哪一个更适合排序

假设我们有100个字符串(名称)并想要对它们进行排序,哪个是ArrayList和LinkedList中的首选,并且首选项的原因是什么?

dac*_*cwe 6

使用CollectionsAPI 进行排序无关紧要.如果你看看执行情况Collections.sort:

public static <T extends Comparable<? super T>> void sort(List<T> list) {
    Object[] a = list.toArray();
    Arrays.sort(a);
    ListIterator<T> i = list.listIterator();
    for (int j=0; j<a.length; j++) {
        i.next();
        i.set((T)a[j]);
    }
}
Run Code Online (Sandbox Code Playgroud)

您可以看到它执行以下操作:

  1. 使用创建列表的副本 List.toArray
  2. 使用该Arrays.sort方法对数组进行排序
  3. 更新列表(例如,将数组复制回列表)