我使用的是Android,我要处理的是一个数据库,该数据库存储了每行中关联的多个数据点,按表中的列排序。我想做的是提取整行数据,并将它们分配给ArrayList中的元素。我采用的方法(似乎过于复杂)是以整个表为目标,试图遍历每一列,并将每一列的数据点分配给对象的一个变量(在ArrayList.的元素中)
我希望我能够遍历每一行,并将数据(int、Strings、doubles)分配给ArrayList特定元素中对象的变量,然后当我进入下一行时,开始将相关数据输入到列表的新元素中。这是我的:
public Cursor getAssignments() {
return getReadableDatabase().query(false, ASSIGNMENT_TABLE, COLUMN_TITLES,
null, null, null, null, " ORDER BY "+ASSIGNMENT_COLUMN_NAME, null);
}
public ArrayList<Inputted> getListOfAssignments () {
Cursor c = getAssignments();
ArrayList<Inputted> assignList = new ArrayList<Inputted>();
//must return assignList... but how to traverse?!
}
您可以使用此处列出的这些方法,但我希望这些方法就是您要查找的方法。首先,获取列数。然后您可以迭代列。。。
int getColumnCount()
Return total number of columns
String getColumnName(int columnIndex)
Returns the column name at the given zero-based column index.
int getType(int columnIndex)
Returns data type of the given column's value.
String getString(int columnIndex)
Returns the value of the requested column as a String.
(The other types are available and documented at the above link)