java Map 映射

 

 

 

 

 

public class MapDemo {
	public static void main(String[] args) {
		Map<String, Object> map=new HashMap<>();
		map.put("key1", "value1");
		map.put("key2", "value2");
		map.put("key3", "value3");
		map.put("key4", "value4");
		map.put("key5", "value5");
		map.put("key6", "value6");
		map.put("key7", "value7");
		map.put("key8", "value8");
		//System.out.println(map);
		//map.clear();
		System.out.println(map);//清楚Map里面所有的key和value
		System.out.println(map.size());//获取Map里面有多少个键值对
		System.out.println(map.containsKey("key8"));//true判断Map里面是否有这么一个key
		System.out.println(map.keySet());//不能直接用foreach去遍历,否则报错
		Set<String> set=new HashSet<>(map.keySet());
		for (String key : set) {
			System.out.print("键"+key+",");
		}
		System.out.println(map.remove("key3"));//移出Map中指定的一个key值,value伴随Key而生
		System.out.println(map);
		System.out.println(map.values());//同.keySet();一样的功能
		System.out.println(map.get("key6"));//找到key所对应的的value值,不能根据value去寻找key
		//获取Map中所有的Entry(key-value)
		Set<Map.Entry<String, Object>> set1=map.entrySet();
		for (Map.Entry<String, Object> entry : set1) {
			String key=entry.getKey();//获取Key
			Object value=entry.getValue();//获取Value
			System.out.println(key+"<->"+value);
		}
	}
}

 

 

 例题:

public class Char_count {
	public static void main(String[] args) {
		String str="esofuhwofhwourhworhiowurgiuwrgwiurgwiurfghwiuhfwsihfwiufhu";
		//把字符串转换成Char数组(字符串本来就是Char[] 	)
		char[] arr=str.toCharArray();
		//key存储字符,value存储字符出现的次数
		Map<Character, Integer>map=new TreeMap<>();
		//判断当前字符是否在Map中的key存在
		for (char ch : arr) {
			if(map.containsKey(ch)){//当前Map中key包含该字符,把value取出加一再放进去
				Integer old=map.get(ch);
				map.put(ch, old+1);
			}else{
				map.put(ch, 1);//当前Map中不包含该字符,把该字符存放到Key,value值设置为1
			}
		}
		System.out.println(map);
	}
}

 

 

 

自然排序:

 

posted @ 2017-04-12 21:42  *小嘻嘻*  阅读(1937)  评论(0)    收藏  举报