java的iterator问题

Iteratorit=list.iterator();while(it.hasNext()){System.out.println(it.next());}那它的第一个元... Iterator it=list.iterator();
while(it.hasNext()){
System.out.println(it.next());
}那它的第一个元素不是没有打印吗 它打印的是下一个元素啊 求大神解释
展开
 我来答
德主四0H
2012-08-10 · TA获得超过137个赞
知道答主
回答量:50
采纳率:0%
帮助的人:61.3万
展开全部
迭代器iterator的指针最初是指向第一个元素的前面,不指向任何元素,当调用它的next方法的时候就会指向下一个元素同时返回该元素,第一次调用也就会指向第一个元素,一直到指向最后一个元素的时候,调用hasNext方法就会返回false
llei32wang
2012-08-10 · TA获得超过2736个赞
知道大有可为答主
回答量:1478
采纳率:60%
帮助的人:1403万
展开全部
不是
it.hasNext()返回的是有没有下一个元素。
it.next()才是指向下一条元素。
Iterator it=list.iterator();
while(it.hasNext()){
System.out.println(it.next());
}
打印的是所有的元素
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
桥安荷q9
2012-08-10 · TA获得超过509个赞
知道小有建树答主
回答量:314
采纳率:0%
帮助的人:326万
展开全部
Iterator it=list.iterator(); //获取list集合的迭代对象
while(it.hasNext()){ //it.hasNext() 返回boolean 判断时候有下一个值
System.out.println(it.next()); //it.next() 将it的游标往下一位取值
}

关键就在于 it产生时,游标的位置在list集合里的第一个对象之前,所以取第一个对象要先it.next()。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
龙族思沫
2012-08-10
知道答主
回答量:9
采纳率:0%
帮助的人:1.2万
展开全部
这个跟C 中带表头的链表和不带表头的链表是一个意思
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式