0

我有这个带有字符串和arraylis的哈希图:

Map<String, ArrayList<String>> devNameType = new HashMap<String, ArrayList<String>>();
public void kimenetPV(String name){
        //létrehozom a nevet
                String devName = name;

                //létrehozom a kimeneteket tartalmazó arraylistet
                ArrayList<String> outputs = new ArrayList<String>();

                // 2. hozzáadaom az elemeket
                outputs.add("EM A");
                outputs.add("EM B");
                outputs.add("AOUT1");
                outputs.add("AOUT2");               

                devNameType.put(devName, outputs);

                Iterator iter = devNameType.entrySet().iterator();

                //kilistázom az elemeket
                while (iter.hasNext()) {
                    Map.Entry mEntry = (Map.Entry) iter.next();
                    System.out.println(mEntry.getKey() + " : " + mEntry.getValue());
                }
    }

我怎样才能打印所有的值?对不起,我第一次使用哈希图的初学者问题。

4

3 回答 3

2

您可以像这样打印键:值对:

Iterator<Entry<String, List<String>>> iter = devNameType.entrySet().iterator();
while (iter.hasNext()) {
    Entry<String, List<String>> next = iter.next();
    List<String> value = next.getValue();
    System.out.println("key = " + next.getKey());
    System.out.println("values : ");
    for (String str : value) {
        System.out.println(str);
    }
}
于 2013-10-21T13:03:28.707 回答
1
for (List<String> value : devNameType.values()) {
    ... do something with this value
}

对于键/值:

for (String key: devNameType.keySet()) {
    List<String> values = devNameType.get(key);
    ... do something with the name and values
}

请参阅http://docs.oracle.com/javase/6/docs/api/java/util/Map.html#values()http://docs.oracle.com/javase/6/docs/api/java /util/Map.html#keySet()

于 2013-10-21T12:59:06.103 回答
0

使用 hashMap.values() 您可以获得所有值的集合:http: //developer.android.com/reference/java/util/HashMap.html#values()

于 2013-10-21T12:58:26.383 回答