2016-04-04 27 views

回答

3

因爲Arrays沒有方法parallelSort需要int[]Comparator

parallelSort過載,需要一個Comparator秒參數是一個與一個通用的第一個參數(static <T> void parallelSort(T[] a, Comparator<? super T> cmp)),因此需要的是,第一個參數是引用數組。 Integer[]滿足該要求,而int[]不符合。

+0

這裏的部分問題是Java在運行時實現類似泛型和模板的東西,這就是爲什麼需要對象並且不能使用像int這樣的本機類型。將它與C++進行比較,在編譯時實現模板,消除這些問題,並可用於本機類型。 – rcgldr

2

因爲parallelSort的簽名是:public static <T extends Comparable<? super T>> void parallelSort(T[] a)其中T是一個要排序的obhects類。