Map:
Map是一种依照键(key)存储元素的容器,键(key)很像下标,在List中下标是整数。在Map 中键(key)可以使任意类型的对象。Map中不能有重复的键(Key),每个键(key)都有一个对应的值(value) 也就是Map集合当中存储的是键值对
Key(键)为Set 由于Set具有唯一性,会去掉重复的,所以在Map集合中Key具有唯一性
Value值为(Collection) 值是可以重复的
一个键(key)和它对应的值构成map集合中的一个元素
总结:
Map一次存一对元素, Collection 一次存一个。Map 的键不能重复,保证唯一。
Map 一次存入一对元素,是以键值对的形式存在.键与值存在映射关系.一定要保证键的唯一性.
方法
由于Map 为 一个独立的接口 所有不能实例化 我们只能实现它的子类HashMap
//存键值对
往Map集合里面添加键值对的方法
Map map = new HashMap();
map.put(1, "zhangsan");
map.put(1, "wangwu");//覆盖 当键相同的时候 下一个会覆盖前一个
map.put(2, "lisi");
map.put(3, "zhaoliu");
根据Key 拿到value的方法
map.get(1)
拿到并打印Value值的方法
System.out.println(map.get(4));
拿到并且存在多少对 key value的映射
System.out.println(map.size());//存在多少对 keyvalue的映射
遍历Map集合里面的元素
(1)通过迭代器来遍历
//首先遍历Set集合获取每一个key
Iterator itor = keys.iterator(); 获取迭代器
while(itor.hasNext()){
String key = (String) itor.next(); //意思是获取下一个键值
String value = (String) map.get(key); //通过键值获取Value值
System.out.println(key+"-"+value); //打印便利出来的键值对
}
(2)通过增强for来遍历
Set keys = cty.keySet(); //获取其中所有的键集合
for (Object obj : keys) {
String key = (String) obj; 将Object类型的Key强转成为String的Key
String value = (String)map.get(key); 通过键获取值Value
System.err.println(key+"-"+value);
}