Map集合是一个接口,Map<K,V> K:键的类型,V:值的类型
将键映射到值的对象;不能包含重复的键;每一个键可以映射到最多一个值
常用的有:HashMap,TreeMap,LinkedHashMap
HashMap:键的底层是哈希表,不会重复
TreeMap:底层是红黑树
LinkedHashMap:链表加哈希表
相关方法
添加元素用 put()方法
判断集合是否包含指定的键 containsKey(Object key)
判断集合是否包含指定的值 containsValue(Object Value)
判断集合是否为空 isEmpty()
根据键获取值 get(Object key)
获取所有键的 set集合 keySet()
获取所有键值对对象的集合 entrySet()
Map集合遍历
- 可以用keySet()方法获取所有键进行遍历,在遍历中根据键获取值,可以用get()方法。
Set<String> keySet = map.keySet();
//遍历键的集合,获取到每一个键。用增强for实现
for (String key : keySet) {
//根据键去找值。用get(Object key)方法实现
String value = map.get(key);
System.out.println(key + "," + value);
}
- 使用entrySet方法获取键和值的对象集合,在使用其中的getKey()获取键,getValue()获取值
Set<Map.Entry<String, String>> entrySet = map.entrySet();
//遍历键值对对象的集合,得到每一个键值对对象
for (Map.Entry<String, String> me : entrySet) {
//根据键值对对象获取键和值
String key = me.getKey();
String value = me.getValue();
System.out.println(key + "," + value);
}