在HashMap的ArrayList中搜索HashMap

Ash*_*mar 6 java

我有一个HashMap的ArrayList.我想在其中搜索HashMap但无法找到实现此目的的方法.请建议我怎么做?谢谢.

Luc*_*elt 7

以我理解的方式回答您的问题!

for (HashMap<String, String> hashMap : yourArrayList)
    {
        // For each hashmap, iterate over it
        for (Map.Entry<String, String> entry  : hashMap.entrySet())
        {
           // Do something with your entrySet, for example get the key.
           String sListName = entry.getKey();
        }
    }
Run Code Online (Sandbox Code Playgroud)

您的Hashmap可能使用其他类型,这个使用字符串.


小智 5

看看这是否有帮助:

@Test
public void searchMap() {
    List<Map<String, String>> listOfMaps = new ArrayList<Map<String,String>>();
    Map<String, String> map1 = new HashMap<String, String>();
    map1.put("key1", "value1");
    Map<String, String> map2 = new HashMap<String, String>();
    map1.put("key2", "value2");
    Map<String, String> map3 = new HashMap<String, String>();
    map1.put("key3", "value3");
    listOfMaps.add(map1);
    listOfMaps.add(map2);
    listOfMaps.add(map3);

    String keyToSearch = "key2";
    for (Map<String, String> map : listOfMaps) {
        for (String key : map.keySet()) {
            if (keyToSearch.equals(key)) {
                System.out.println("Found : " + key + " / value : " + map.get(key));
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

干杯!