码:
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 Doc:
Arrays#sort
根据提示,将指定的对象数组按升序排序
其元素的自然排序.数组中的所有元素都必须
实现Comparable接口.
为什么Arrays#sort不会抛出JavaDoc所声明的ClassCastException?