如何添加已在其他地方创建的哈希映射?

时间:2014-06-30 20:28:08

标签: java hashmap

我有一个Hashmaps数组,我需要将其中的数据与另一个数组进行比较,以便我可以向Hashmap添加更多数据。但是当我在比较函数中添加到hashmap时,它似乎并没有坚持下去。这是我的代码:

private void meshData(){
        for(Map<String,String> map: dataMap){
            for(List<String> arrayLine: statusArray){
                if(map.get("shortName").equals(arrayLine.get(0))){
                    map.put("ActiveVlan", arrayLine.get(3));
                    System.out.println(map.get("shortName"));
                    //System.out.println("match");
                }
            }
        }
    }

我将List<Map<String,String>>(dataMap)与已填充数据的List<List<String>(statusArray)进行比较。当我的名字匹配时(在if语句中)我需要添加statusArray中保存的另一个数据单元格。当我打印出来时,hashmap中没有“ActiveVlan”。

1 个答案:

答案 0 :(得分:0)

这一行

map.put("ActiveVlan", arrayLine.get(3));

表示您将arrayLine.get(3)与密钥ActiveVlan相关联。您的映射是String键到String值的1对1映射。尝试添加

System.out.println(map.get("ActiveVlan");

看看我的意思。您可能希望形成一个新的数据结构,比如一个包含所需值的类,然后形成一个以该对象为值的地图。像

这样的东西
Map<String, MyObject>