遍历列表时需要访问当前的迭代器对象,目前只知道如何分别使用hasNext()和next()方法来检查列表是否有下一个元素以及访问下一个对象,但是有没有方法可以访问当前的对象呢?
lmvvr0a81#
next()方法返回下一个对象(也将迭代器更改为下一个对象)
14ifxucb2#
请考虑对上面发布的代码进行以下轻微修改:这段代码将打印字符串“hello”,然后顺利完成。在执行第3行之后,myIterator“在”任何项之前 * 的假想位置。虽然列表中只有一项,但是第5行的myIterator.hasNext()返回true,因为“下一个”项是第一项。myIterator.next()在第一次迭代中返回对第一项“hello”的引用,并且不会抛出异常。在第二次迭代中,myIterator.hasNext()返回false,因为你已经到达了它的项的末尾,此时while循环将退出。myIterator.hasNext()的true响应意味着myIterator.next()不会抛出异常。
myIterator
myIterator.hasNext()
true
myIterator.next()
2条答案
按热度按时间lmvvr0a81#
next()方法返回下一个对象(也将迭代器更改为下一个对象)
14ifxucb2#
请考虑对上面发布的代码进行以下轻微修改:
这段代码将打印字符串“hello”,然后顺利完成。
在执行第3行之后,
myIterator
“在”任何项之前 * 的假想位置。虽然列表中只有一项,但是第5行的myIterator.hasNext()
返回true
,因为“下一个”项是第一项。myIterator.next()
在第一次迭代中返回对第一项“hello”的引用,并且不会抛出异常。在第二次迭代中,myIterator.hasNext()
返回false,因为你已经到达了它的项的末尾,此时while循环将退出。myIterator.hasNext()
的true
响应意味着myIterator.next()
不会抛出异常。