创建标准SQLite游标后,我使用以下命令迭代条目:
while (cursor.moveToNext()) {
}
Run Code Online (Sandbox Code Playgroud)
正在正确处理所有行.我读过的所有文档都说明你需要发出一个文件moveToFirst()来确保你指向光标集的第一个条目.
这是否有效,即使它不应该,另一个版本可能没有相同的处理?
Gle*_*ger 43
不,这是正常的. Cursors从行索引-1开始(在第一行之前).如果Cursor引用多行,则使用while您建议的循环遍历它们是首选方法.它将调用moveToNext(),将您移动到索引0(第一行),然后从那里开始.
如果您Cursor只引用一行,则可以moveToFirst()在读取数据之前调用它,以确保您使用的是有效索引.二者moveToFirst()并moveToNext()具有相同的效果时,Cursor在第一次创建并在索引-1.
| 归档时间: |
|
| 查看次数: |
4635 次 |
| 最近记录: |