Map是一种依照键(key)存储元素的容器,键(key)很像下标,在List中下标是整数。 

在Map中键(key)可以使任意类型的对象。Map中不能有重复的键(Key),每个键(key) 
都有一个对应的值(value)。

一个键(key)和它对应的值构成map集合中的一个元素。

Map中的元素是两个对象,一个对象作为键,一个对象作为值。键不可以重复,但是值可以重复。
Map<String,String> map = new HashMap<String, String>();
			//添加方法
				//put方法
				map.put("文章", "马伊琍");
				map.put("谢霆锋", "张柏芝");
				map.put("谢霆锋", "张柏芝");
				Map<String,String> map2 = new HashMap<String, String>();
				map2.put("张三", "李四");
				map2.put("狗娃","狗剩");
				//putAll方法
				map.putAll(map2);
			System.out.println(map);
			//获取方法
				//get 传入键值,获取val值
				System.out.println("获取的对象是:"+map.get("谢霆锋"));
				//size 获取键值对的个数
				System.out.println("一共有键值对数量:"+map.size()+"个");
				//containsKey 判断是否包含某个键值
				System.out.println("是否包含键值'谢霆锋'?"+map.containsKey("谢霆锋"));
				//containsValue 判断是否包含某个值
				System.out.println("是否包含值'张柏芝'?"+map.containsValue("张柏芝"));
				//isEmpty 判断集合是否为空
				System.out.println("集合是否为空?"+map.isEmpty());
			//删除方法
				//remove 返回删除的v值
				System.out.println("删除的值是:"+map.remove("谢霆锋"));
				//clear 没有返回值
				map.clear();
				System.out.println(map);
				//isEmpty 判断集合是否为空
				map.put(null, null);
				System.out.println("集合是否为空?"+map.isEmpty());

  

			//HashMap的存储原理与HashSet的存储原理相同,不同的只是HashSet根据的是元素,而HashMap存储位置根据的是键
			//TreeMap的底层实现原理也是红黑二叉树,如何存储的键值对的键值具备自然顺序,它会根据存储的键值对的键值对存储的键值对进行排序.
			//如果键值对的键不具备自然顺序,而又没有实现comparable接口饼子啊compareTo方法中定义比较规则或者对TreeMap传入比较器,那么编译就会报错
			//HashTable,线程安全,但操作效率低,目前已被淘汰,不建议使用
				TreeMap<String, String> treeMap= new TreeMap<String, String>();
				treeMap.put("a", "001");
				treeMap.put("d", "002");
				treeMap.put("c", "004");
				treeMap.put("b", "004");
				System.out.println(treeMap);

  

  

 
posted on 2017-07-31 10:51  人生第一步  阅读(104)  评论(0编辑  收藏  举报