【发布时间】:2019-02-14 17:19:25
【问题描述】:
有点初学者的问题但是......
我有一个从数据库返回的 ResultSet 对象 - 3 列 30 行。
我检索以下数据集:
使用以下内容:
try {
preparedStatement = conn.prepareStatement(
sqlStatement,
ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);
rs = preparedStatement.executeQuery();
ResultSetMetaData md = rs.getMetaData();
int columns = md.getColumnCount();
while(rs.next()) {
HashMap row = new HashMap(columns);
for(int i=1; i<=columns; ++i){
row.put(md.getColumnName(i),rs.getObject(i));
}
list.add(row);
}
...我将它作为 ArrayList 返回
...调试时显示如下:
我希望能够在伪代码中迭代 HashMap 值:
- 获取密钥 0
- 获取值 0、1 和 2
- 使用这些作为测试数据
- 如果运气不好,请尝试键 2
我知道这应该不难,我只是在努力寻找迭代 HashMap 的 ArrayList 的最佳方法
【问题讨论】:
-
您可以使用 java 8 流与 flatmap 一起访问内部 HashMap
-
为什么第4步是“try key 2”?钥匙1怎么了?由于第 2 步中项目的顺序似乎很重要,您应该查看 LinkedHashMap
标签: java arraylist collections hashmap