Iterator(迭代器的使用)

迭代器(Iterator)java

  迭代器是一種設計模式,它是一個對象,它能夠遍歷並選擇序列中的對象,而開發人員不須要了解該序列的底層結構。迭代器一般被稱爲「輕量級」對象,由於建立它的代價小。設計模式

  Java中的Iterator功能比較簡單,而且只能單向移動:設計

  (1) 使用方法iterator()要求容器返回一個Iterator。第一次調用Iterator的next()方法時,它返回序列的第一個元素。注意:iterator()方法是java.lang.Iterable接口,被Collection繼承。code

  (2) 使用next()得到序列中的下一個元素。對象

  (3) 使用hasNext()檢查序列中是否還有元素。繼承

  (4) 使用remove()將迭代器新返回的元素刪除。接口

  Iterator是Java迭代器最簡單的實現,爲List設計的ListIterator具備更多的功能,它能夠從兩個方向遍歷List,也能夠從List中插入和刪除元素。開發

迭代器應用:rem

list l = new ArrayList();
 l.add("aa");
 l.add("bb");
 l.add("cc");
 for (Iterator iter = l.iterator(); iter.hasNext();) {
     String str = (String)iter.next();
     System.out.println(str);
 }
 /*迭代器用於while循環
 Iterator iter = l.iterator();
 while(iter.hasNext()){
     String str = (String) iter.next();
     System.out.println(str);
 }
 */

Iterator的接口定義:it

public interface Iterator {  
  boolean hasNext();  
  Object next();  
  void remove();  
}

使用: Object next():返回迭代器剛越過的元素的引用,返回值是Object,須要強制轉換成本身須要的類型

    boolean hasNext():判斷容器內是否還有可供訪問的元素

    void remove():刪除迭代器剛越過的元素

迭代使用方法:(迭代其實能夠簡單地理解爲遍歷,是一個標準化遍歷各種容器裏面的全部對象的方法類)

for(Iterator it = c.iterator(); it.hasNext(); ) {  
  Object o = it.next();  
   //do something  
}
相關文章
相關標籤/搜索