当我将 Arrays.sort () 与一个比较器和一个列表作为一个集合使用时,该集合之前被转换为一个数组,我得到一个类转换异常。这是我的代码:
List<SomeClazz> somes = new ArrayList<SomeClazz>();
Comparator<SomeClazz> attrComparator = new AttrComparator();
somes = createSomeObjectes(); // returnes a list of course
// this is line 25 where the exception occours
Arrays.sort((SomeClazz[])somes.toArray(), attrComparator);
异常消息:
Exception in thread "main" java.lang.ClassCastException:
[Ljava.lang.Object; cannot be
cast to [Lpack.SomeClazz; at pack.TestMain.main(TestMain.java:25)
这可能是什么原因?提前谢谢!