Ram*_*amz 7 arrays sqlite android cursor
我有一个数据库名称"CUED"(sqlite Android)它有一个表HELLO,其中包含一个NAME列我可以从该列获取String的值.让我告诉你我的代码部分
myDB =hello.this.openOrCreateDatabase("CUED", MODE_PRIVATE, null);
Cursor crs = myDB.rawQuery("SELECT * FROM HELLO", null);
while(crs.moveToNext())
{
String uname = crs.getString(crs.getColumnIndex("NAME"));
System.out.println(uname);
}
Run Code Online (Sandbox Code Playgroud)
它将逐个打印该值.现在我需要的是我想从数据库中获取列值,以便我可以将它存储在字符串数组中.
Cri*_*ian 26
你已经完成了困难的部分...数组的东西非常简单:
String[] array = new String[crs.getCount()];
int i = 0;
while(crs.moveToNext()){
String uname = crs.getString(crs.getColumnIndex("NAME"));
array[i] = uname;
i++;
}
Run Code Online (Sandbox Code Playgroud)
无论如何,我总是建议在这种情况下使用集合:
List<String> array = new ArrayList<String>();
while(crs.moveToNext()){
String uname = crs.getString(crs.getColumnIndex("NAME"));
array.add(uname);
}
Run Code Online (Sandbox Code Playgroud)
为了比较数组,你可以这样做:
boolean same = true;
for(int i = 0; i < array.length; i++){
if(!array[i].equals(ha[i])){
same = false;
break;
}
}
// same will be false if the arrays do not have the same elements
Run Code Online (Sandbox Code Playgroud)