我正在用Java读取SQLite数据库,并具有整数类型和字符串类型的结果集。
结果集的大小永远不会相同,因此我相信字符串数组将无法工作。
我所拥有的是[Int ItemID] [String ItemName],并希望能够获得结果集以将其保存到某种类型的地图,列表或数组中,以便我可以根据需要将其输出给用户。 / p>
我尝试使用字符串数组进行以下操作;但是就像我说的那样-它的大小永远不会超过对SQLite数据库的搜索查询。
Connection connection = DriverManager.getConnection("jdbc:sqlite:ItemDB.db");
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery(query);
String queryResults[][] = null;
while (resultSet.next()) {
queryResults[current][0] = resultSet.getString("itemId");
queryResults[current][1] = resultSet.getString("itemName");
current++;
}
resultSet.close();
statement.close();
connection.close();
return queryResults;
如果有更好的方法来实现我所寻找的目标,我会全力以赴!
谢谢!
答案 0 :(得分:2)
使用地图:
Map<Integer, String> dataMap = new HashMap<>();
while (resultSet.next()) {
dataMap.put(resultSet.getInt("itemId"), resultSet.getString("itemName"));
}
编辑:如果需要对键进行排序,则可以使用TreeMap
。