接口:java.util.Map<K, V>
实现:
java.util.HashMap<K, V>:哈希表
java.util.TreeMap<K, V>:平衡树
getOrDefault
map.getOrDefault("key", default)//如果map里有key就返回key对应的value,没有就返回default
在查找场景中,defualt设置为0,如果查询结果为空,则返回0;
public class HashMaptest {
public static void main(String[] args) {
Map<String, Integer> map = new HashMap<>();
map.put("张三", 23);
map.put("赵四", 24);
map.put("王五", 25);
String age= String.valueOf(map.getOrDefault("赵四", 30));
//String age = map.getOrDefault("赵四", 30);
System.out.println(age);// 24,map中存在"赵四",使用其对应值24
String age2 = String.valueOf(map.getOrDefault("刘能", 30));
System.out.println(age2);// 30,map中不存在"刘能",使用默认值30
System.out.println(map);
}
}
遍历map 中的 key 和 value
public static void main(String[] args) {
Boolean a=isAnagram("abczxcvbnm","cabmnbvcxz");
System.out.println(a);
}
public static boolean isAnagram(String s, String t) {
if(s.length()!=t.length()) return false;
Map<Character,Integer> map=new HashMap<>();
for(int i=0;i<s.length();i++){
map.put(s.charAt(i),map.getOrDefault(s.charAt(i),0)+1);
map.put(t.charAt(i),map.getOrDefault(t.charAt(i),0)-1);
}
for(Integer value:map.values()){ //单独遍历 vulue
if(value!=0) return false;
}
for(Character x:map.keySet()){ //单独遍历key
System.out.println(s);
}
for (Map.Entry<Character, Integer> entry : map.entrySet()) { //key value一起遍历
Character mapKey = entry.getKey();
Integer mapValue = entry.getValue();
System.out.println(mapKey + ":" + mapValue);
}
return true;
}
}
putAll 将另一个Map存入当前map
Map<String,String> map = new HashMap<>();
//添加符合要求的健值存入map
map.put("A","a");
map.put("B","b");
Map<String,String> map1 = new HashMap<>();
map1.put("C","c");
map1.put("D","d");
map1.put("E","e");
//将另一个Map存入当前map
map.putAll(map1);
System.out.println(map);
System.out.println(map1);
boolean containskey = map.containsKey("A");
//根据key是否存在返回一个布尔值
keySet()
返回Map里面所有的Key ,返回类型为Set集合(不重复)
Set<String> key = map.keySet();
[A, C, D, E]
values()
返回Map里面所有的value,返回类型为Collection集合(可以重复);
Collection collection = map.values();
[aa, c, d, e]
标签:map,hashmap,Map,System,println,api,put,String
From: https://www.cnblogs.com/wdnmdp/p/16829814.html