Iterator 的hasNext方法和next方法

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

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

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

请看代码吧:

LinkedHashMap myMap = new LinkedHashMap();

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

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

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

Set mySet = myMap.keySet();

int i=0,j=0;

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

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

  i++;

  String theOne=iterator.next();

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

}

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

  j++;

  String theOne=iterator.next();

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

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

}

转载于:https://www.cnblogs.com/klbc/p/4487270.html

你可能感兴趣的:(Iterator 的hasNext方法和next方法)