2023新版千锋教育Java视频教程(Java 0基础,java入门,java自

Map学习的总结
首先是Map的四种实现类:
第一种:HashMap
最常用,根据键的hashCode值来存储数据。根据键可以直接获取它的值,具有很快的访问速度。HashMap最多只允许一条记录的键为null,允许多条记录值为null。是非同步的。
如果存入自定义对象,要重写hashCode方法和equals方法,确保对象的唯一性。
第二种:HashTable
与HashMap相似,但不同的是:key和value的值均不允许为null;它支持线程同步,即任意时刻只有一个线程能写HashTable,因此导入HashTable在写入时会比较慢。
第三种:TreeMap
能把保存的记录按照key来排序,默认是升序,也可以指定排序的比较器,和TreeSet一样。当使用Iterator遍历TreeMap时,得到的记录是排过序的。TreeMap不允许key为null,且为非同步的。
第四种:LinkedHashMap
保存了记录插入时的顺序,即遍历的时候,得到的顺序是先插入先出来,比HashMap慢。key和value允许为空,非同步的。
然后是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 Set<K> keySet(): 获取Map集合中所有的键,存储到Set集合中。
public Set<Map.Entry<K,V>> entrySet(): 获取到Map集合中所有的键值对对象的集合(Set集合)。