开发者社区> 问答> 正文

android 读取数据库问题:报错

if(c.moveToFirst()){ 
	for (int i=0 ; i<c.getCount();i++){
		c.move(i);
		String id = c.getString(c.getColumnIndex("_id"));
		String price = c.getString(c.getColumnIndex("price"));
		String name = c.getString(c.getColumnIndex("name"));

		CheckMenu cm = new CheckMenu();
		cm.setId(id);
		cm.setPrice(price);
		cm.setName(name);

		list.add(cm); 
			}

数据库中存放了三条数据,执行时报错Unable to start activity ComponentInfo{com.wxx.wlo/com.wxx.wlo.UpdateActivity}: android.database.CursorIndexOutOfBoundsException: Index 3 requested, with a size of 3

展开
收起
kun坤 2020-06-07 16:17:24 637 0
1 条回答
写回答
取消 提交回答
  • while(!c.isAfterLast){

    String id = c.getString(c.getColumnIndex("_id"));

    String price = c.getString(c.getColumnIndex("price"));

    String name = c.getString(c.getColumnIndex("name"));
              CheckMenu cm = new CheckMenu();
              cm.setId(id);

              cm.setPrice(price);

              cm.setName(name);

              

    list.add(cm);

     c.moveToNext();

    }

    ######谢谢了,虽然已经解决了,但是你的方法很不错
    2020-06-07 16:17:29
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
58同城Android客户端Walle框架演进与实践之路 立即下载
Android组件化实现 立即下载
蚂蚁聚宝Android秒级编译——Freeline 立即下载