2 回答
TA贡献1876条经验 获得超7个赞
ArrayList
没有forEachRemaining
,迭代器等它返回做。
对每个剩余元素执行给定的操作,直到处理完所有元素或操作引发异常。如果指定了该顺序,则操作按迭代顺序执行。动作抛出的异常被转发给调用者。
TA贡献1898条经验 获得超8个赞
如果使用迭代器遍历列表,next()则它将返回该列表中的下一个元素。因此,假设您没有遍历完整列表并调用forEachRemaining()它,那么它将列表中未遍历的剩余元素。
演示
List<String> list = new ArrayList<>();
list.add("one");
list.add("two");
list.add("three");
list.add("four");
list.add("five");
//added five element in list
Iterator<String> iterator = list.iterator();
//visiting two elements by called next()
System.out.println("Printed by next():" + iterator.next());
System.out.println("Printed by next():" + iterator.next());
//remaining un-visited elements can be accessed using forEachRemaining()
iterator.forEachRemaining(s -> {System.out.println( "Printed by forEachRemaining():" + s);});
输出:
Printed by next():one
Printed by next():two
Printed by forEachRemaining():three
Printed by forEachRemaining():four
Printed by forEachRemaining():five
添加回答
举报