日期:2014-05-20  浏览次数:20624 次

it.hasNext()的困惑
collection   col   =   (Collection)request.getAttribute( "col ");
Iterator   it   =   col.iterator   ;
while(it.hasNext())//请问如果数据库中只有一条数据,此时it.hsaNext()返加的是什么?
{
}



------解决方案--------------------
true
------解决方案--------------------
true

没有具体研究
个人理解 Iterator刚开始指向的是第一条数据的上一条,所以我们在取数据的时候要用it.next()
------解决方案--------------------
beibeiG(北北)的理解是正确的。

------解决方案--------------------
看下col 是不是真的有数据啊!!!!!!
------解决方案--------------------
应该是你没有得到数据
------解决方案--------------------
-_-#
楼主你真的在数据库里取数据马?
你发誓
collection col = (Collection)request.getAttribute( "col ");
里面的request不是那个ServletRequest?
如果是ServletRequest.getAttribute的话首先要判断是否为null

------解决方案--------------------
it.hasNext()应该是指向第一条数据的
起码从数据库里面读是这样的 就像rs.Next()
------解决方案--------------------
不妨再加几条数据看看,还错的话就是取的时候没取到
------解决方案--------------------
it.hasNext()刚开始是指向第一条数据之前的,所以如果有数据你需要执行
it.next()--> 这时候移到了第一条数据了.