什么意思是什么(!cursor.isafterlast())

时间:2015-08-07 09:06:18

标签: android cursor

您好我正在使用SQLite制作应用程序,我正在学习读取数据的功能,我遇到了这个:

while(!cursor.isAfterLast()){}

这是什么意思?它返回什么?

3 个答案:

答案 0 :(得分:3)

当光标位于最后一行位置时,

cursor.isAfterLast()返回true。添加!(不)意味着执行直到它不在光标的末尾。

所以while(!cursor.isAfterLast()){}表示while循环将遍历到光标的最后一条记录。

这里的cursor是一个类,它使用sql查询保存从表中获取数据的行。

答案 1 :(得分:1)

如果您已阅读光标中的所有位置,

cursor.isAfterLast()方法会返回true,而在其他情况下会false

每次循环迭代必须包含cursor.moveToNext()才能更改光标的位置。

答案 2 :(得分:0)

isAfterLast返回此光标是否指向最后一行之后的位置。

如果返回true,您的代码片段将导致infinte循环,因为循环体是空的。

如果您在正文中调用moveToNext或类似内容,则会遍历游标中的所有行。