关于hasnext和next

成盒落地98k 2016-10-20 09:47:31
到底在哪些类中,调用next之前必须先调用hasnext啊
...全文
329 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
成盒落地98k 2016-10-21
  • 打赏
  • 举报
回复
检查下个位置是否有值,是必须的吗
自由自在_Yu 2016-10-21
  • 打赏
  • 举报
回复
引用 4 楼 cfdxnl 的回复:
检查下个位置是否有值,是必须的吗
需要用到这个值就要检查,不然可能会报空指针的
weixin_36463152 2016-10-21
  • 打赏
  • 举报
回复
枚举,集合类的迭代器
肃穆丶 2016-10-20
  • 打赏
  • 举报
回复
楼上+1
家里敷泥呀 2016-10-20
  • 打赏
  • 举报
回复
看你这问题,像是不是被ResultSet 的 next() 和 Iterator 的 hasNext() 、 next() 搞糊涂了。 一般会调用next方法的的都是迭代器类型的类,里面存储着一个列表,然后能挨个遍历出数据。 一般这种数据结构的取值,操作上通常分为两步。 第一步,检查是否有下一个值:如ResultSet 的 next() 、Iterator 的 hasNext() 、Enumeration的hasMoreElements() 等等。 这些方法都有一个特别,返回布尔值来判断有无。 第二步,取下一个值:ResultSet 的getString()等、Iterator 的 next()、Enumeration的 nextElement() 等等。 这些方法返回Object的具体值。 所以通常迭代器类型的结构调用next()之前,都要先调用hasNext() (注意,ResultSet 的判断方法是next(),只是命名上的差异,其实原理都一样。) ps: 当然,也有些地方的设计是直接调用返回值的方法,如果返回值为null表示遍历结束。
zycxnanwang 2016-10-20
  • 打赏
  • 举报
回复
容器类遍历………………

62,626

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧