代碼:Arrays.sort(對象[])沒有被拋ClassCastException異常
public class CompareTest {
public static void main(String[] args) {
ArrayList list = new ArrayList();
(list).add(new CompareTest());
Arrays.sort(list.toArray()); //Does not throw Exception , why ?
Collections.sort(list); //throws ClassCastException
}
}
作爲每Java文檔: Arrays#sort
對指定對象升序排列的陣列,根據 自然對其元素進行排序。 陣列中的所有元素必須使用 實現Comparable接口。
爲什麼Arrays#sort,does not throw ClassCastException
正如JavaDoc所述?
有趣的 - 同樣的事情在Java 7中的TreeMap的「固定」,但顯然不在陣列... – assylias 2013-03-16 14:31:07
所以javadoc可以欺騙。 – Apurv 2013-03-16 14:35:26