我有一个来自 sqlite 数据库的函数中的游标的数组。我想将多个项目添加到数组中,以便更轻松地从其他页面引入数据。即我想做 mArray("ID"), mArray("Name") (我将从函数数组中填充一个列表视图,并希望能够轻松访问来自 ID 的名称)
这是我目前仅将 ID 保存在数组中的代码:
public static Array GetRooms(String StationID) {
File dbfile = new File(Global.currentDBfull);
SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabase(dbfile, null);
Cursor c = db.rawQuery("select * from StationObjects where ObjectID = 0 and StationID = " + StationID , null);
c.moveToFirst();
Log.e("TomDebug", c.getString(c.getColumnIndex("SubGroupName")));
ArrayList<String> mArrayList = new ArrayList<String>();
c.moveToFirst();
while(!c.isAfterLast()) {
mArrayList.add(c.getString(c.getColumnIndex("SubGroupName")));
c.moveToNext();
}
return null;
}
编辑:为了澄清一点;
在psudocode中,我希望能够做到:
while(!c.isAfterLast()) {
mArrayList.name.add(c.getString(c.getColumnIndex("Name")));
mArrayList.type.add(c.getString(c.getColumnIndex("Type")));
mArrayList.ID.add(c.getString(c.getColumnIndex("ID")));
c.moveToNext();
}
这样我可以在代码中的任何地方做
Array curRooms = GetRooms("1234")
String name = curRooms.Name
String type = curRooms.Type
(我知道数组和字符串之间的混合不会在那里工作,但只是一个例子)