我经常看到代码涉及迭代数据库查询的结果,对每一行做一些事情,然后继续前进到下一行.典型的例子如下.
Cursor cursor = db.rawQuery(...);
cursor.moveToFirst();
while (cursor.isAfterLast() == false)
{
...
cursor.moveToNext();
}
Run Code Online (Sandbox Code Playgroud)
Cursor cursor = db.rawQuery(...);
for (boolean hasItem = cursor.moveToFirst();
hasItem;
hasItem = cursor.moveToNext()) {
...
}
Run Code Online (Sandbox Code Playgroud)
Cursor cursor = db.rawQuery(...);
if (cursor.moveToFirst()) {
do {
...
} while (cursor.moveToNext());
}
Run Code Online (Sandbox Code Playgroud)
这些对我来说似乎过于冗长,每次都有多次调用Cursor方法.当然必须有一个更简洁的方式?