Map接口的常用方法
//返回 Map 集合中指定键对象所对应的值。V 表示值的数据类型
V get(Object key)
//向 Map 集合中添加键-值对,返回 key 以前对应的 value,如果没有, 则返回 null
V put(K key, V value)
//从 Map 集合中删除 key 对应的键-值对,返回 key 对应的 value,如果没有,则返回null
V remove(Object key)
//返回 Map 集合中所有键-值对的 Set 集合,此 Set 集合中元素的数据类型为 Map.Entry
Set entrySet()
//返回 Map 集合中所有键对象的 Set 集合
Set keySet()
//判断是否包含指定键
boolean containsKey(Object key)
//当Map集合中有这个key时,就使用这个key值;如果没有就使用默认值defaultValue。
Map.getOrDefault(Object key, V defaultValue)
//定义,如:
Map<Character,Integer> sm=new HashMap<>();
Map中的集合不能包含重复的键,值可以重复;每个键只能对应一个值。
HashMap<K,V>:存储数据采用的哈希表结构,元素的存取顺序不能保证一致。由于要保证键的唯一、不重复,需要重写键的hashCode()方法、equals()方法。
LinkedHashMap<K,V>:HashMap下有个子类LinkedHashMap,存储数据采用的哈希表结构+链表结构。通过链表结构可以保证元素的存取顺序一致;通过哈希表结构可以保证的键的唯一、不重复,需要重写键的hashCode()方法、equals()方法。
Set<Character> skeys = sm.keySet();
for (Character key : skeys) {
//相关操作
}
//获取 所有的 entry对象 entrySet
Set<Entry<String,String>> entrySet = map.entrySet();
// 遍历得到每一个entry对象
for (Entry<String, String> entry : entrySet) {
String key = entry.getKey();
String value = entry.getValue();
}