迭代器的作用:
- 就是用于抓取集合中的元素
迭代器的方:
- hasNext() 問是否有元素可遍歷。如果有元素可以遍歷,返回true,否則返回false 。
- next() 獲取元素...
- remove() 移除迭代器最后一次返回 的元素。
異常:
NoSuchElementException 沒有元素的異常。
出現的原因: 沒有元素可以被迭代了。。。
*/
public class Demo2 {
public static void main(String[] args) {
Collection c = new ArrayList();
c.add("狗娃");
c.add("狗剩");
c.add("鐵蛋");
c.add("美美");
/*//遍歷集合的元素------>方式一: 可以使用toArray方法。
Object[] arr = c.toArray(); // toArray() 把集合 的元素存儲到一個 Object的數組中 返回。
for(int i = 0 ; i<arr.length ; i++){
//System.out.print(arr[i]+",");
System.out.print(c.get(i)+",");
}
//要求使用iterator迭代器遍歷。
*/
Iterator it = c.iterator(); //返回一個迭代器 疑問:iterator()方法返回的是一個接口類型,為什么接口又可以調用方法可以使用呢? iterator 實際 上返回的是iterator接口的實現類對象。
/*
while(it.hasNext()){ // hasNext() 問是否有元素可以遍歷。
System.out.println("元素:"+ it.next()); //獲取元素
}
*/
/*it.next();
it.next(); //只有至少調用一次next后才會有返回元素
it.remove(); //刪除迭代器最后一次返回的元素。
*/
//清空集合 的元素
while(it.hasNext()){
it.next();
it.remove();
}
System.out.println("集合的元素:"+ c);
}
}