A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 黑马-胡明 中级黑马   /  2014-8-13 12:56  /  1007 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

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的遍历了

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马