public class Main {
public static void main(String[] args) {
List<Object[]> list = getIt();
// unsuccessful iteration, throws ClassCastException
for (Object id : list) {
System.out.println(id);
}
// successful iteration
Iterator iterator = list.iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
}
private static List<Object[]> getIt() {
List list = new ArrayList();
list.add(1L);
return list;
}
}
何が起こるかは大まかな見積もりで理解していますが(コンパイラによって生成されたイテレータには明示的なキャストが含まれています)、いくつかの良い答えが欲しいです、ありがとう。