【发布时间】:2016-03-10 03:29:28
【问题描述】:
我正在试验 Java HashSet 类及其 toArray() 方法。下面是我想出的代码。编译器没有显示任何错误,但是当我运行代码时,IDE 会输出错误消息:
Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.Integer;
at JTOCollection.TheCollectionInterface.main(TheCollectionInterface.java:26)
Java Result: 1
由于我的经验不足,我无法完全理解错误消息背后的完整原因,有人可以解释一下吗?
Set<Integer> set1 = new HashSet<>();
set1.add(1);
set1.add(2);
set1.add(3);
set1.add(2);
Integer[] intArray = (Integer[]) set1.toArray();
for(Integer i : intArray){
System.out.println(i);
}
【问题讨论】: