为了账号安全,请及时绑定邮箱和手机立即绑定

关于Iterator迭代器和hasNext()方法的问题

http://img1.sycdn.imooc.com//5e5cc3530001ef1a09920326.jpg

第一个问题,接口的使用不都是创建这个接口的对象,再通过对象实现方法吗?那这里的coursesToSelect.iterator()哪个是对象呢?

第二个问题,这里的条件判断it如果有下一个元素就输出下一个元素的id和name,那第一个元素是怎么被输出的呢?(因为判断集合里有第二个元素就会直接输出第二个元素的信息了,第一个元素的信息怎么办呢)

正在回答

2 回答

你发的太长了,后面的看不到

我猜你可能在问这个https://www.iteye.com/problems/87073


0 回复 有任何疑惑可以回复我~
#1

奶尤糯米团子 提问者

是的 在问这个 明白了谢谢!
2020-03-05 回复 有任何疑惑可以回复我~

第一个问题:coursesToSelect.iterator()  中coursesToSelect是对象,iterator()是方法,返回值类型是Iterator.

第二个问题:授你以渔,自己看文档https://docs.oracle.com/javase/10/docs/api/java/util/Iterator.html

0 回复 有任何疑惑可以回复我~
#1

奶尤糯米团子 提问者

看了你的“渔”,里面说的hasNext() returns true if the iteration has more elements. next() returns the next element in the iteration. 所以当hasNext()返回true的时候next()返回的是下一个coursesToSelect里的元素,这样的话,第一个元素不就不可能被输出了嘛?
2020-03-05 回复 有任何疑惑可以回复我~
#2

慕粉1039238650 回复 奶尤糯米团子 提问者

你想表达什么?
2020-03-05 回复 有任何疑惑可以回复我~
#3

奶尤糯米团子 提问者 回复 慕粉1039238650

就是当对集合里的第一个元素(索引是0)进行判断的时候,因为有下一个元素(索引1),所以hasNext返回true。next()方法就会输出第二个元素(索引1)的值。但是这样的话第一个元素(索引0)就永远不会被输出了呀?因为没有任何一个元素的下一个元素是集合里的第一个元素(索引0)吧?
2020-03-05 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

关于Iterator迭代器和hasNext()方法的问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信