Map体系集合
Map(interface)
map接口特点:
-
用于储存任意键值对(key-value),存储一对数据
-
key(键):无序,无下标,不可重复(唯一)
-
value(值):无序,无下标,可以重复
方法:
put()将对象存入到集合中,关联键值,key重复则覆盖原值。
get(Object key)根据键获取对应的值
set(k)返回所有的key
Collection values()返回包含所有value的Collection集合
Set(Map.Entry<K,V>)键值匹配的Set集合
Set<Map.Entry<K,V>> entrySet()返回此映射中包含映射关系的set视图
SetkeySet()返回此映射中包含的键的set视图
//创建map集合
Map<String,String> map = new HashMap<>();
//添加元素
map.put("cn","中国");
map.put("uk","英国");
map.put("usa","美国");
//删除元素,通过key
map.remove("cn") ;
//遍历1.使用keySet()
//得到所有的key的set集合
Set<String> keyset = map.keySet();
//用增强for或者迭代器遍历存放key的set集合
for (String key:keyset
) {
//使用map中的get(key)方法获取key对应的value值
System.out.println(key+"--"+map.get(key));
}
//遍历2.使用entrySet方法
Set<Map.Entry<String,String >> entries=map.entrySet();
for (Map.Entry<String,String > kv:entries
) {
System.out.println(kv.getKey()+"--"+kv.getValue());
}
遍历:
keySet()中,把key存入set集合中。
entrySet()中,把key和value封装成一个entry(键值对),然后存入set集合。Map.Entry类型 键值对。Entry<K,V>是一个内部接口.用getkey()getValue()分别得到键和值
//判断
System.out.println(map.containsKey("cn"));
System.out.println(map.containsValue("美国"));