Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.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数组/列表中保存int和string列?_Java_Sql_Sqlite - Fatal编程技术网

如何在java数组/列表中保存int和string列?

如何在java数组/列表中保存int和string列?,java,sql,sqlite,Java,Sql,Sqlite,我正在读一个java中的SQLite数据库,它有一个整数类型和字符串类型的结果集 结果集的大小永远不一样,所以我相信字符串数组是行不通的 我拥有的是[Int ItemID][String ItemName],我希望能够获得结果集,将它们保存到某种映射、列表或数组中,这样我就可以根据需要将它们输出给用户 我尝试使用字符串数组执行以下操作;但正如我所说的,它的大小与针对SQLite DB的搜索查询的大小不同 Connection connection = DriverManager.getConne

我正在读一个java中的SQLite数据库,它有一个整数类型和字符串类型的结果集

结果集的大小永远不一样,所以我相信字符串数组是行不通的

我拥有的是[Int ItemID][String ItemName],我希望能够获得结果集,将它们保存到某种映射、列表或数组中,这样我就可以根据需要将它们输出给用户

我尝试使用字符串数组执行以下操作;但正如我所说的,它的大小与针对SQLite DB的搜索查询的大小不同

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;
如果有更好的方法来实现我的目标,我会洗耳恭听的

提前谢谢

使用地图:

Map<Integer, String> dataMap = new HashMap<>();
while (resultSet.next()) {
    dataMap.put(resultSet.getInt("itemId"), resultSet.getString("itemName"));
}
Map dataMap=newhashmap();
while(resultSet.next()){
put(resultSet.getInt(“itemId”)、resultSet.getString(“itemName”);
}
编辑:如果需要对键进行排序,可以使用
树形图。

使用地图:

Map<Integer, String> dataMap = new HashMap<>();
while (resultSet.next()) {
    dataMap.put(resultSet.getInt("itemId"), resultSet.getString("itemName"));
}
Map dataMap=newhashmap();
while(resultSet.next()){
put(resultSet.getInt(“itemId”)、resultSet.getString(“itemName”);
}

编辑:如果需要对键进行排序,可以使用
树形图。

太棒了!这就是我要找的。有没有一种方法可以在后面按整数排序?不幸的是,它需要1000并将其放在1之后。@DotSlashs将使用
TreeMap
而不是
HashMap
。在SQL中对响应进行排序(“按某个列排序”),然后使用LinkedHashMap vs.HashMap来保持插入顺序。TreeMap为我做的!仅供参考,a是a,因此其键按排序顺序保存。想了解更多信息,太棒了!这就是我要找的。有没有一种方法可以在后面按整数排序?不幸的是,它需要1000并将其放在1之后。@DotSlashs将使用
TreeMap
而不是
HashMap
。在SQL中对响应进行排序(“按某个列排序”),然后使用LinkedHashMap vs.HashMap来保持插入顺序。TreeMap为我做的!仅供参考,a是a,因此其键按排序顺序保存。欲了解更多信息。