掌握LinkedHashSet的用法
方法/步骤
1
前面介绍了Set接口的实现类HashSet,本节介绍Set接口的另一个实现类LinkedHashSet。相对HashSet来说,LinkedHashSet存储结构是一个双向链表,因此它存储的元素是有序的。LinkedHashSet继承自HashSet,源码更少、更简单,唯一的区别是LinkedHashSet内部使用的是LinkHashMap。这样做的意义或者好处就是LinkedHashSet中的元素顺序是可以保证的,也就是说遍历序和插入序是一致的。LinkedHashSet类支持四个构造函数。第一种构造函数初始化一个空的LinkedHashSet:LinkedHashSet( );第二种构造函数使用Collection元素集初始化LinkedHashSet:LinkedHashSet(Collection c)第三种构造函数用给定的容量初始化LinkedHashSet:LinkedHashSet(int capacity)第四种构造函数通过传入的容量和填充比初始化LinkedHashSet:LinkedHashSet(int capacity, float fillRatio)下面先通过一个应用实例对LinkedHashSet的用法有个具体了解。
2
LinkedHashSet 底层采用双向链表实现,可以保证元素的插入顺序,又因为是HashSet的子类,所以插入的元素不能重复。运行上面的程序,输出结果如下图所示: