黑马程序员技术交流社区

标题: 迭代器的遍历,超级详细 [打印本页]

作者: 黑马-胡明    时间: 2014-8-13 12:56
标题: 迭代器的遍历,超级详细
java中迭代器Iterator接口是用来对集合中的对象进行遍历或者移除操作的,大多数是遍历操作的
下面介绍迭代器的使用:
ArrayList list=new ArrayList();
  list.add("A");
  list.add("B");
  list.add("H");
  list.add("E");
  list.add("J");
  
  
  Iterator ite=list.iterator();
  while(ite.hasNext()){
   System.out.println(ite.next());
  }
首先定义一个集合,然后运用迭代器循环遍历出来,但是这好像体现不出来迭代器的优点啊,并且迭代器还不能进行往后遍历,只能往前遍历,还不如用单用一个循环遍历方便,但是下面就体现出来了:
HashSet list=new HashSet();
  list.add("A");
  list.add("B");
  list.add("H");
  list.add("E");
  list.add("J");
  
  
  for(int i=0;i<list.size();i++){
   System.out.println(list.get());
  }
上面的代码list.get()方法的调用是错误的,根本就没有这个方法,因为HashSet类add方法添加对象之后是按照算法随机放的位置,用单纯的循环是不能遍历的,所以这里就只能用迭代器的next()方法来遍历了,代码如下:
HashSet list=new HashSet();
  list.add("A");
  list.add("B");
  list.add("H");
  list.add("E");
  list.add("J");
  
  
  Iterator ite=list.iterator();
  while(ite.hasNext()){
   System.out.println(ite.next());
  }

用这种方法就可以实现HashSet的遍历了






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