import java.util.*;
public class Example {
public static void main(String[] args) {
ArrayList list=new ArrayList();
System.out.println("打印数组中的元素:");
for(int i=0;i<100;i++){
list.add(i);
}
Iterator it=list.iterator();
System.out.println("读取集合中的元素:");
while(it.hasNext()){
Object obj=it.next();
System.out.print(obj+" " );
}
try{
System.out.println("\n读取索引位置为50的元素:"+list.get(50));
System.out.println("读取索引位置为102的元素:"+list.get(102));
}catch(Exception e) {
System.out.println("下标越界异常");
}
}
}
运行结果:
分析:通过迭代器的hasnext()方法读取集合中的元素时,都是将这些元素当做Object类型来看待,如果想得到该元素的具体类型,需要进行强制类型转换。在调用hasnext()方法读取下一个元素时,要保证下一个元素存在,否则会抛出NoSuchElementException异常。