将HashMap列表分配给另一个HashMap列表作为方法返回值

时间:2016-06-27 13:03:24

标签: arraylist methods hashmap return assign

我正在尝试将方法的返回值分配给HashMaps列表。

方法返回列表

public List<HashMap<String, String>> getDetails() {

        List<HashMap<String, String>> info = new ArrayList<HashMap<String, String>>();
        HashMap<String, String> components = new HashMap<String, String>(); 
        //Fetched some result from DataBase in ResultSet (assume i have fetched three rows).
        ResultSet rs = stmt.executeQuery(query);
        while (rs.next()) {
            components.put("id", rs.getString("id"));
            components.put("columnA", rs.getString("columnA"));                         
            components.put("columnB", rs.getString("columnB"));
            components.put("columnC", rs.getString("columnC"));
            components.put("columnD", rs.getString("columnD"));
            info.add(components);
        }
        return info;
}

通话方式

public void dispDetails(){

        List<HashMap<String, String>> info = new ArrayList<HashMap<String, String>>();
        details = getDetails();
        for(int i=0;i<3;i++){
        System.out.println(details.get(i).get("id"));
        System.out.println(details.get(i).get("columnA"));
        System.out.println(details.get(i).get("columnB"));
        System.out.println(details.get(i).get("columnC"));
        System.out.println(details.get(i).get("columnD"));

        }


}

但不知何故,调用方法列表中的所有值(即dispDetails)都是相同的。

有没有办法分配清单。

0 个答案:

没有答案