集合14-HashSet源码简析

基于HashMap实现的Set


集合14-HashSet源码简析_第1张图片

HashSet特性

  • 非线程安全的集合
  • 不保元素的任何顺序,元素允许为null
  • 没有任何重复元素的集合,底层通过HashMap来实现,对HashSet元素的操作都映射到HashMap的key上(迭代,查找等等)。
集合14-HashSet源码简析_第2张图片

方法列表

HashSet的方法都是通过代理HashMap的方法来实现的,HashSet方法比较简单,给出方法列表

集合14-HashSet源码简析_第3张图片

有方法列表可知,HashSet并没有实现随机访问的方法,即不能通过get(int index)方法获取指定位置上的元素,必须通过iterator()方法进行迭代访问。

add方法

集合14-HashSet源码简析_第4张图片

在HashSet集合中添加一个元素 e 相当于在HashMap中添加一个key为e,value为Object类型引用的Entry节点。

其他方法

构造器方法:

集合14-HashSet源码简析_第5张图片

增删改查


集合14-HashSet源码简析_第6张图片

你可能感兴趣的:(集合14-HashSet源码简析)