Map集合
1.能够说出Map集合特点
Map存放的是一对一对的数据
特点:
1.键不能重复
2.值能重复
3.可以根据键找到值
常用子类:
1.hashMap: 哈希表
2.LinkedHashMap: hashMap的子类 哈希表+链表 保证键的唯一和不重复需要重写equals和hashCode方法
常用方法:
1. public V put(K key, V value):往集合中添加指定的键和值
2. public V remove(Object key): 把指定键的所对应的键值删除,返回被删除的值
3. public V get(Object key): 根据指定的键,获取键所对应的值
4. public Set<K> keySet(): 获取集合所有的键,保存在set集合中
5. public Set<Map.entry<K, V>> entrySet(): 获取集合中的所有键值对对象集合
2.使用Map集合添加方法保存数据
public V put(K key, V value): 添加一对键值对,返回被替换的本来的value值
3.使用”键找值”的方式遍历Map集合
1.拿到所有的键,keySet方法
2.根据每一个键找到对应的值:get方法
4.使用”键值对”的方式遍历Map集合
1. 直接拿到所有的键值对:entrySet
2. 拿到键:getKey
3. 拿到值:getValue
5.能够使用HashMap存储自定义键值对的数据
1. 如果自定义的类作为value使用,没有要求。
2. 如果自定义的类作为key使用,必须同时覆盖重写equals和hashCode方法。
6.能够使用HashMap编写斗地主洗牌发牌案例
强调:
Map负责将数字和字符串进行翻译。
allCards里面存放的是数字,洗牌洗的也是数字,发牌发的也是数字,排序排的也是数字,只有看牌的时候,才会将数字翻译成为字符串。