1. HashSet
- 存储结构
HashSet集合采用哈希表( HashMap )进行存储,以一种“散列”的方式进行存储 - 常用方法
- addAll( 添加的元素集合 )
功能:批量添加元素 - clear( )
功能:清空集合内所有元素 - contains( )
功能:判断当前集合内是否存在指定元素
返回:boolean值,true代表存在,false代表不存在 - isEmpty( )
功能:判断当前集合是否为空
返回:boolean值,true代表为空,false代表不为空 - remove( 待删除元素 )
功能:删除指定元素
传入:将要删除的元素
返回:boolean值,存在则删除成功,返回true;不存在则删除失败,返回false - removeAll( 待删除元素集合 )
功能:删除指定元素集合
传入:将要删除的元素集合
返回:boolean值,当前集合包含传入集合中的所有元素则删除成功,返回true;否则删除失败,返回false - size( )
功能:获取集合中元素的个数 - toArray( )
功能:将当前集合内的元素转换至一个数组中 - clone( )
功能:快速的复制当前的集合(克隆集合)
返回:与原集合相同(包括HshaCode值)的一个集合(但另外占用空间)
2. LinkedHashSet
- 存储结构
采用哈希表( HashMap )进行存储,额外采用类似“链表”的方式保存当前元素的存入顺序
LinkedHashSet集合内的元素,是有序的
3. TreeSet( 集合类 )
- 存储结构
TreeSet采用TreeMap存储,而TreeMap在底层使用了红黑树存储结构(自平衡的排序二叉树)
TreeSet集合内的元素,可以进行自动排序 - 常用方法
first( )
功能:获取集合中的第一个元素
返回:集合中的第一个元素last( )
功能:获取集合中的最后一个元素
返回:集合中的最后一个元素headSet( 指定元素,boolean值 )
功能:获取指定元素之前的头部子集合
传入:只传入指定元素或传入指定元素和boolean值
返回:返回获取的头部子集合,若只传入指定元素,则返回的子集合中不包含传入元素;若传入指定元素和boolean值,传入true时包含传入元素,传入false时不包含传入元素tailSet( 指定元素,boolean值 )
功能:获取指定元素之后的尾部子集合
传入:只传入指定元素或传入指定元素和boolean值
返回:返回获取的尾部子集合,若只传入指定元素,则返回的子集合中包含传入元素;若传入指定元素和boolean值,传入true时包含传入元素,传入false时不包含传入元素lower( 指定元素 )
功能:返回小于指定元素的第一个元素
传入:指定元素
返回:返回小于指定元素的第一个元素floor( 指定元素 )
功能:返回小于等于指定元素的第一个元素
传入:指定元素
返回:返回小于等于指定元素的第一个元素higher( 指定元素 )
功能:返回大于指定元素的第一个元素
传入:指定元素
返回:返回大于指定元素的第一个元素ceiling( 指定元素 )
功能:返回大于等于指定元素的第一个元素
传入:指定元素
返回:返回大于等于指定元素的第一个元素-
subSet( 指定元素1,boolean值1,指定元素2,boolean值2 )
功能:从集合中截取部分元素
1> 传入:只传入指定元素1和指定元素2
返回:截取后的子集合(包含元素1,不包含元素2)2> 传入:传入指定元素1,对应的boolean值1,指定元素2,对应的boolean值2
返回:截取后的子集合(若若分别传入对应的boolean值false和true,则不包含元素1,包含元素2) pollFirst( )
功能:弹出集合中的第一个元素(弹出后原集合中不存在弹出元素)
返回:当前元素中的第一个元素pollLast( )
功能:弹出集合中的最后一个元素(弹出后原集合中不存在弹出元素)
返回:当前元素中的最后一个元素