Map集合
java.util.Map<k,v>集合
Map集合特点:
- Map集合是一个双列集合,一个元素包含两个值(一个key,一个value)
- Map集合中的元素,key和value的数据类型可以相同,也可以不同
- Map集合中的元素,key是不允许重复的,value是可以重复的
- Map集合中的元素,key和value是一一对应
HashMap集合
java.util.HashMap<k,v>集合 implements Map<k,v>接口
HashMap集合的特点:
- HashMap集合底层是哈希表:查询速度特别快 【JDK1.8之前数组+单向链表 JDK1.8之后数组+单向链表/红黑树(链表的长度超过8);提高查询速度】
- HashMap集合是一个无序集合,存储元素和取出元素的顺序有可能不一致
LinkedHashMap集合
java.util.LinkedHashMap<k,v>集合extends HashMap<k,v>集合
LinkedHashMap集合的特点:
- LinkedHashMap集合底层是哈希表+链表(保证迭代的顺序)
- LinkedHashMap集合是一个有序集合,存储元素和取出元素的顺序是一致的
Map集合方法
public V put(K key, V value): 把指定的键与指定的值添加到Map集合中。
public V remove(Object key): 把指定的键 所对应的键值对元素 在Map集合中删除,返回被删除元素的值。
public V get(Object key) 根据指定的键,在Map集合中获取对应的值。
boolean containsKey(Object key) 判断集合中是否包含指定的键。
/*
* public V put(K key, V value):把指定的键与指定的值添加到Map集合中。
* 返回值:
* 存储键值对的时候,key不重复,返回值v是null
* 存储键值对的时候,key重复,会使用新的value替换map中重复的value,返回被替换的value值
* */
public static void show1(){
Map<String, String> m = new HashMap<>();
String put1 = m.put("李晨", "范冰冰");
System.out.print