java iterator

 迭代器是一種設計模式,它是一個對象,它可以遍歷並選擇序列中的對象,而開發人員不需要了解該序列的底層結構。 
      Java中的Iterator功能比較簡單,並且只能單向移動;
      (1) 使用方法iterator()要求容器返回一個Iterator。第一次調用Iterator的next()方法時,它返回序列的第一個元素。
              注意:iterator()方法是java.lang.Iterable接口,被Collection繼承。
      (2) 使用next()獲得序列中的下一個元素。
      (3) 使用hasNext()檢查序列中是否還有元素。
      (4) 使用remove()將迭代器新返回的元素刪除。
       Iterator是Java迭代器最簡單的實現;
              首先看看java.util.Iterator接口的定義:
          public interface Iterator {
                  boolean hasNext();
                 Object next();
                  void remove();
               }
             依賴前兩個方法就能完成遍歷,典型的代碼如下:
          for(Iterator it = c.iterator(); it.hasNext(); ) {
             Object o = it.next();
             // 對o的操作...
          }
          在JDK1.5中,還對上面的代碼在語法上作了簡化:
              // Type是具體的類型,如String。
        for(Type t : c) {
            // 對t的操作...
        }
          迭代器應用:
         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);
         }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章