【问题标题】:while only loopwhile 只循环
【发布时间】:2012-08-29 04:43:43
【问题描述】:

以前我有一个“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();
  }
}

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

【问题讨论】:

  • 还有 etc 在哪里实例化?
  • 您是否会在您的问题中添加适当的语言延迟,例如 javasql
  • 输入if。吐司代码为:Toast.makeText(context, "before L", Toast.LENGTH_LONG).show();
  • do...while 循环是否只执行一次,直到 isLast() 被调用?

标签: java sql loops while-loop


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 2015-09-28
    • 1970-01-01
    • 2016-05-13
    • 2016-08-21
    • 1970-01-01
    • 2015-03-23
    • 2014-07-13
    • 2018-10-09
    • 2011-11-02
    相关资源
    最近更新 更多