代码示例:
public class TestMap { /* * 如何遍历Map * Set keySet() Collection values() Set entrySet() * */ @Test public void test2() { Map map = new HashMap(); map.put("AA", 213); map.put("BB", 45); map.put(123, "CC"); map.put(null, null); map.put(new Person("ADD", 23), 89); //1.遍历key集 Set key = map.keySet(); for (Object o : key) { System.out.println(o); } System.out.println(); //2.遍历value集 Collection values = map.values(); Iterator i = values.iterator(); while (i.hasNext()) { System.out.println(i.next()); } //3.如何遍历key-value对。(Entry) //方式一 Set key1 = map.keySet(); for (Object obj : key1) { System.out.println(obj + "--->" + map.get(obj)); } System.out.println(); //方式二 Set set = map.entrySet(); for (Object o : set) { Map.Entry entry = (Map.Entry)o; // System.out.println(entry.getKey() + "------>" +entry.getValue()); System.out.println(entry); } } }
结果:
BB
null
Person{name='ADD', age=23}
123213
45
null
89
CC
AA--->213
BB--->45
null--->null
Person{name='ADD', age=23}--->89
123--->CCAA=213
BB=45
null=null
Person{name='ADD', age=23}=89
123=CC