Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用光标获得多个选择结果?_Java_Cursor - Fatal编程技术网

Java 如何使用光标获得多个选择结果?

Java 如何使用光标获得多个选择结果?,java,cursor,Java,Cursor,我使用cursor.movetonext获得如下选择结果: while(cursor.moveToNext()){ int index2=cursor.getColumnIndex(DbHelper.KEY_PASSWORD); String password=cursor.getString(index2); buffer.append(password); } return buffer.toString(); 但每次只能返回一个结果。如果有多个结果满足选择条件,该

我使用cursor.movetonext获得如下选择结果:

while(cursor.moveToNext()){
    int index2=cursor.getColumnIndex(DbHelper.KEY_PASSWORD);
    String password=cursor.getString(index2);
    buffer.append(password);
}
return buffer.toString();

但每次只能返回一个结果。如果有多个结果满足选择条件,该怎么办?如何在我的主要活动中获得所有结果

这取决于
while(cursor.moveToNext())
循环的作用。如果它遍历所有结果,那么只要在循环外部初始化了缓冲区,代码就应该返回所有结果

假设您从查询中返回了3个密码,“p1”、“p2”和“p3”,那么这个方法将把所有这些连接在一起,并返回一个字符串“p1p2p3”

通常的做法是使用java.sql.ResultSet和List返回多个结果。e、 g

List<String> listOfPasswords = new ArrayList<String>();
while(resultSet.next()){
    listOfPasswords.add(resultSet.getString(index));
}
return listOfPasswords;
List listOfPasswords=new ArrayList();
while(resultSet.next()){
add(resultSet.getString(index));
}
返回密码列表;

使用一些sort@user3580294您能告诉我更多详细信息吗?如果您想返回多个结果,请在迭代时将它们存储在集合中(
ArrayList
HashMap
,等等),并在完成后返回该集合。@user3580294我可以使用for循环逐个返回它们吗?返回一个结果后,光标是否会移动到下一行?一旦从方法返回,程序将退出该方法,因此无法继续。您可以返回一个结果,也可以同时返回所有结果。但我使用sqlite和游标,如何将游标选择值放入数组中?在得到返回数组后,我必须将其分解为单个值。那我怎么能实现呢?