欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【android】一个小问题让我纠结了很久

程序员文章站 2022-03-10 15:47:58
...
之前处理cursor的方法:[b]此方法是有问题的!!![/b]

public List<Map<String, Object>> getData() {
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
while (getCursor().moveToNext()) {
Map<String, Object> map = new HashMap<String, Object>();
System.out.println("ID: "+getCursor().getString(0));
map.put("_id", getCursor().getString(0));
System.out.println("NAME: "+getCursor().getString(1));
map.put("Number", getCursor().getString(1));
list.add(map);
}


正确处理cursor的方法:

for(getCursor().moveToFirst();!getCursor().isAfterLast();getCursor().moveToNext())
{
Map<String, Object> map = new HashMap<String, Object>();
int _id = getCursor().getColumnIndex("_id");
int _number = getCursor().getColumnIndex("phonenr");
map.put("_id", getCursor().getString(_id));
map.put("Number", getCursor().getString(_number));

System.out.println(getCursor().getString(_id));
System.out.println(getCursor().getString(_number));
list.add(map);
}
相关标签: cursor