繁体   English   中英

ArrayList中的Java HashMap

[英]Java HashMap inside ArrayList

如何获取arrayList内HashTable的值?

我有以下代码:

public ArrayList resultSetToArrayList(ResultSet rs) {

    ArrayList list = new ArrayList();
    try {
        ResultSetMetaData md = rs.getMetaData();
        int columns = md.getColumnCount();
        int rowcount = 0;
        while (rs.next()) {
            Hashtable row = new Hashtable();
            for (int i = 1; i <= columns; ++i) {
                row.put(md.getColumnName(i), rs.getString(i));
            }
            list.add(rowcount, row);
            rowcount++;
        }
    } catch (Exception e) {
        e.printStackTrace();
    }

    return list;
}

您似乎正在使用raw typesHashtable而不是HashMap 我想你要的是

public List<Map<String, String>> resultSetToArrayList(ResultSet rs) {
    List<Map<String, String>> list = new ArrayList<>();
    try {
        ResultSetMetaData md = rs.getMetaData();
        int columns = md.getColumnCount();
        while (rs.next()) {
            Map<String, String> row = new HashMap<>();
            for (int i = 1; i <= columns; ++i) {
                row.put(md.getColumnName(i), rs.getString(i));
            }
            list.add(row);
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
    return list;
}

至于从Map获取值,您可以像这样迭代Map.keySet()

for (String key : map.keySet()) {
  System.out.printf("%s = %s%n", key, map.get(key));
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM