我无法理解 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]);
}
}
首先这个方法的返回类型是void。方法签名中有什么<T extends Comparable<? super T>>
作用?
在这里使用 Array.sort 的目的是什么?
同样,一旦我们实现了可比较或比较器,我们编写的 compare 或 compareTo 方法逻辑在哪里考虑?