【发布时间】:2012-05-30 05:27:15
【问题描述】:
我经常看到涉及对数据库查询结果进行迭代、对每一行执行某些操作,然后移至下一行的代码。典型例子如下。
Cursor cursor = db.rawQuery(...);
cursor.moveToFirst();
while (cursor.isAfterLast() == false)
{
...
cursor.moveToNext();
}
Cursor cursor = db.rawQuery(...);
for (boolean hasItem = cursor.moveToFirst();
hasItem;
hasItem = cursor.moveToNext()) {
...
}
Cursor cursor = db.rawQuery(...);
if (cursor.moveToFirst()) {
do {
...
} while (cursor.moveToNext());
}
这些对我来说似乎都过于冗长,每个都多次调用Cursor 方法。肯定有更整洁的方法吗?
【问题讨论】:
-
这样做的目的是什么?您在发布后一分钟内自己回答了...
-
我在提问的同时回答了这个问题。
-
啊,以前从未见过那个链接。问一个你显然已经得到答案的问题似乎很愚蠢。
-
@Barak:我认为他发布这个帖子很棒——现在我知道了一种更简洁的做事方式,否则我不会知道。
-
我似乎很清楚,您发布此内容是为了帮助任何可能前来寻找的人。为此向您提供支持,并感谢您的有用提示!