Java_总结十九(Map 集合类的三种遍历方式)
Map 集合类的三种遍历方式
import java.util.Collection; import java.util.HashMap; import java.util.Map.Entry; import java.util.Set; /** * 键不允许重复 * 值允许重复 * @author Administrator * */ public class Test { public static void main(String[] args) { HashMap<String, String> map = new HashMap<>(); map.put("a", "aa"); map.put("z", "azza"); map.put("b", "bb"); map.put("b", "cc");// 如果键相同,新值覆盖旧值 System.out.println(map); HashMap<String, String> m =new HashMap<>(); m.put("c", "aa"); m.put("b", "dd"); map.putAll(m); System.out.println(map); // 是否包含指定的键 System.out.println(map.containsKey("a")); // 是否包含指定的值 System.out.println(map.containsValue("aa")); // 根据指定的键 删除集合中的 映射关系 map.remove("a"); System.out.println(map); // 遍历 map集合 /** * Set<Map.Entry<K,V>> entrySet() * Set<K> keySet() 将map集合中的所有的键 放到了一个 set集合中 返回此映射 V get(Object key) 返回指定键所映射 Collection<V> values() */ // 第一种遍历map集合的方法 将所有的键放到set集合中 Set<String> set = map.keySet(); for (String key : set) { String value = map.get(key);// 通过指定的键得到对应的value System.out.println(key+"="+value); } // 第二种遍历方式 values Collection<String> collection = map.values();// 将所有的值放到了 Collection集合中 for (String value : collection) { System.out.println(value); } // 第三种遍历方式 得到了一个 装有很多个 Entry映射项的对象 Set<Entry<String, String>> set2 = map.entrySet(); for (Entry<String, String> entry : set2) { System.out.println(entry); System.out.println(entry.getKey());// 从映射项中拿键 System.out.println(entry.getValue());// 从映射项中拿值 } } }