java中的Map集合

89 阅读1分钟

java中的Map集合

1.HashMap集合

1.1HashMap的特点

  1. 底层是链表+数组,jdk8以后又加了红黑树
  2. 存储的是key-value类型的数据
  3. key值不能重复,key重复会进行覆盖,value允许重复
  4. 数据存储无序:无序指的是插入顺序和取出顺序不一致
  5. key和value都允许为空,但是只能有一个空的key

1.2HashMap的常用方法

  1. put(K key, V value) 将键(key)/值(value)映射存放到Map集合中
 public class Test1 {
     public static void main(String[] args) {
         HashMap<String, Integer> hm = new HashMap<>();
         hm.put("ning", 123);
         System.out.println(hm);
 ​
     }
 }
  1. get(Object key) 返回指定键所映射的值,没有该key对应的值则返回 null,即获取key对应的value。
 public class Test1 {
     public static void main(String[] args) {
         HashMap<String, Integer> hm = new HashMap<>();
         hm.put("ning", 123);
         System.out.println(hm.get("ning"));
         System.out.println(hm.get("ning1"));
     }
 }
  1. size() 返回Map集合中数据数量,准确说是返回key-value的组数。
  2. clear() 清空Map集合
  3. isEmpty () 判断Map集合中是否有数据,如果没有则返回true,否则返回false
  4. remove(Object key) 删除Map集合中键为key的数据并返回其所对应value值
  5. containsKey(Object key) Hashmap判断是否含有key
  6. containsValue(Object value) Hashmap判断是否含有value:
  7. putAll() Hashmap添加另一个同一类型的map下的所有数据,类似于copy
  8. replace(K key V value)Hashmap替换这个key的value
 public class Test1 {
     public static void main(String[] args) {
         HashMap<String, Integer> hm = new HashMap<>();
         hm.put("ning", 123);
         hm.replace("ning", 234);
         System.out.println(hm);
     }
 }

总结

上面列举了HashMap的特点,无序,key不能重复,每个元素存储的是key-value的形式,并且列举了常用的一些方法。