1

以前我有一个“do while”循环,现在效果很好。这次我不能让我的“while”循环工作。

|-----|-------|------|------|
|._id.|..INFO.|.DONE.|.LAST.|
|..1..|...A...|...N..|......|
|..2..|...B...|...Y..|..L...|<--- cursor.moveToFirst();
|..3..|...C...|...Y..|......|
|..4..|...D...|...Y..|......|
|..5..|...E...|...N..|......|
|..6..|...F...|...N..|......|
|-----|-------|------|------|

我的代码是:

cursor = db.rawQuery("SELECT * FROM " +TABLE_NAME+" WHERE "+LAST+" LIKE '%L%'", null);
cursor.moveToFirst();
if (!cursor.getString(cursor.getColumnIndex(_id)).equals(Long.toString(rowcount)))
{
  while(!cursor.isLast())
  {
    cursor.moveToNext();
    Toast.makeText(context, "your message", Toast.LENGTH_LONG).show();
  }
}

从未进入循环,我知道这一点,因为我的吐司没有弹出。我只是想知道为什么。我可以通过使用“for”循环以另一种方式做到这一点,但我只是想知道我在这个 while 循环中做错了什么。

4

1 回答 1

1

该查询将仅获取 LAST 值为“L”的行。将不会提取剩余的行。因此没有达到条件。

于 2012-09-04T13:57:52.253 回答