概述

HashSet是基于HashMap来实现的, 底层采用HashMap的key来保存数据, 借此实现元素不重复, 因此HashSet的实现比较简单, 基本上的都是直接调用底层HashMap的相关方法来完成.

Java集合之HashSet源码分析-LMLPHP

HashSet的构造方法就是创建HashMap:

Java集合之HashSet源码分析-LMLPHP

基本操作

1.添加操作

Java集合之HashSet源码分析-LMLPHP

2.删除操作

Java集合之HashSet源码分析-LMLPHP

3.迭代器

Java集合之HashSet源码分析-LMLPHP

其他方法基本也是调用HashMap方法


由于HashSet是基于HashMap实现的, 所以放入的元素也要重写 equals 和 hashCode 方法.

05-11 11:31