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);
}
}


自然排序:


浙公网安备 33010602011771号