DESKTOP-EA11HIB_20200911-蒋宇飞

一、总结

java.util.HashSet< K > 是基于 java.util.HashMap< K , V > 实现的。
1.在 HashSet 中先引入了一个 HashMap :
private transient HashMap < E , Object > map;
2.在 HashSet 中存入的值实际上是存入在了 HashMap 的 key 位置,而 value 处就填入下面的对象:
private static final Object PRESENT = new Object();
3. HashSet 的初始化方法:
public HashSet( int initialCapacity , float loadFactor ) {
    map = new HashMap <> ( initialCapacity, loadFactor );
}

就是创建HashMap。所以其他的操作也都是基于HashMap进行的。

二、感想

得好好总结一下集合框架中各种接口与实现类的区别。