黑马程序员技术交流社区

标题: Iterator(迭代器)接口 [打印本页]

作者: My_Android    时间: 2016-5-28 22:06
标题: Iterator(迭代器)接口
所有实现了Collection 接口的容器类都有一个Iterator() 方法用于返回一个实现一个实现Iterator接口的对象。
Iterator对象称作迭代器,用于方便的实现对容器内元素的遍历操作。

Iterator接口定义了如下方法:
            boolean hasNext();
                                          判断是否有元素没有遍历
            Object next();
                                        返回游标当前位置的元素并将游标移动到下一个位置
            void remove();
                                        删除游标左面的元素,在执行完next之后该操作只能执行一次

  1. import java.util.ArrayList;
  2. import java.util.HashMap;
  3. import java.util.HashSet;
  4. import java.util.Iterator;
  5. import java.util.List;
  6. import java.util.Map;
  7. import java.util.Set;

  8. public class Test {
  9.         public static void main(String[] args) {
  10.                  List list = new ArrayList();
  11.                  list.add("1231");
  12.                  list.add("name");
  13.                  list.add("aaaa");
  14.                  /**
  15.                   * 按下标进行查找
  16.                   */
  17.                  for(int i=0;i<list.size();i++){
  18.                          System.out.println(list.get(i));
  19.                  }
  20.                  /**
  21.                   * 按迭代器进行查找
  22.                   */
  23.                  Iterator i= list.iterator();
  24.                  while(i.hasNext()){
  25.                          String s = (String)i.next();
  26.                          System.out.println(s);
  27.                  }
  28.                  /**
  29.                   * 用For循环方式的迭代器查询方法
  30.                   */
  31.                  for(Iterator iterator = list.iterator(); iterator.hasNext();){
  32.                          String str = (String)iterator.next();
  33.                  }
  34.                  
  35.                  Set set = new HashSet();
  36.                  set.add("张三");
  37.                  set.add(18);
  38.                  for(Iterator iterator = set.iterator(); iterator.hasNext();){
  39.                          String name = (String) iterator.next();
  40.                          int age = (Integer)iterator.next();
  41.                          System.out.println(name + age);
  42.                  }
  43.                  
  44.         }
  45. }
复制代码





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2