-
特点:
- 用于存储任意键值对(Key-Value)
- 键:无序、无下标、不允许重复(唯一)
- 值:无序、无下标、允许重复
-
方法:
- V put(K key, V value) //将对象存入到集合中,关联键值。key重复则覆盖原值
- Object get(Object key) //根据键获取相应的值
- keySet< K > //返回所有的key
- Collection< V > values() //返回包含所有值的Collection集合
- Set<Map.Entry<K,V>> //键值匹配的Set集合
//创建Map集合
Map<String,String> map = new HashMap<String,String>();
//添加元素
map.put("cn","中国");
map.put("uk","英国");
map.put("usa","美国");
map.put("cn","China"); //重复的key会将原来的value替换掉
System.out.println("元素个数:" + map.size()); //元素个数:3
System.out.println(map.toString()); //{usa=美国, uk=英国, cn=China}
//遍历
//使用keySet();
Set<String> keyset = map.keySet();
for(String key : keyset){
System.out.println(key+":"+map.get(key));
}
//使用entrySet();效率高于keySet();
Set<Map.Entry<String,String>> entries = map.entrySet();
for(Map.Entery<String,String> entry : entries){
System.out.println(entry.getKey() + ":" + entry.getValue());
}
//判断
System.out.println(map.containsKey("cn")); //true
System.out.println(map.containsValue("泰国")); //false
//删除数据(通过key)
map.remove("usa");
System.out.println("删除之后:" + map.size()); //删除之后:2