这两个方法都有指向的移动,不同的是,一个返回boolean,一个返回对象:

hasNext():判断当前元素是否存在,并没有指向的移动

next():返回当前元素, 并指向下一个元素

请看代码吧:

LinkedHashMap<String, String> myMap = new LinkedHashMap<String, String>();

myMap .put("0", "0.0");

myMap .put("1", "1.0");

myMap .put("2", "2.0");

Set<String> mySet = myMap.keySet();

int i=0,j=0;

for (Iterator<String> iterator = mySet.iterator(); iterator.hasNext();) {//最后i=3

  iterator.hasNext();//此处执行此方法不影响整体的遍历

  i++;

  String theOne=iterator.next();

  System.out.println(i+"--"+theOne);

}

for (Iterator<String> iterator = mySet.iterator(); iterator.hasNext();) {//最后j=2

  j++;

  String theOne=iterator.next();

  System.out.println(j+"--"+theOne);

  iterator.next();//此处执行此方法会影响整体遍历的执行

}

相关文章:

  • 2022-01-11
  • 2021-10-31
  • 2021-11-21
  • 2021-11-09
  • 2022-12-23
  • 2022-12-23
  • 2022-02-21
  • 2021-09-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-02-01
  • 2021-07-25
  • 2021-10-18
  • 2021-11-29
  • 2021-12-15
相关资源
相似解决方案