HashMap集合原理以及遍历方式(自用)

HashMap底层原理

jdk1.7(7)之前是数组 + 链表,jdk1.8(8)之后是数组 + 链表 + 二叉树(红黑树)。
HashMap集合原理以及遍历方式(自用)

HashMap和Hashtable的相同点

都是双列集合,一个键对应一个值。
都是键不能重复,但是值可以重复。

HashMap和Hashtable的区别

HashMap是JDK1.2版本出现的,允许存储null键和null值,HashMap是线程不同步的(也就是线程不安全),效率高。

Hashtable是JDK1.0出现的,不允许存储null键和null值,HashTable是线程同步的(也就是线程安全),效率低。

map集合的 4 种遍历方式

第一种:根据键找值方式遍历。

第二种:获取所有的键值对对象集合,通过迭代器遍历。

第三种:获取所有的键值对对象集合,通过增强for遍历。

第四种:通过Map集合中的values方法,拿到所有的值。