集合-----Set接口
简要介绍一下Set接口
-
Set接口继承Collection,方法与Collection保持完全一致.
-
Set接口特点
a、无序
无序是指的是Set集合没有索引下标,不能通过索引下标访问
b、不可重复
不允许添加重复元素
3、Set的常用的实现类有:HashSet、TreeSet等等,我们一般使用HashSet
介绍一下HashSet的使用
1、HashSet是一个没有重复元素的集合 ,不保证元素的顺序
2、HashSet允许有null元素
3、HashSet是采用哈希算法实现,底层实际是用HashMap实现的(HashSet本质就是一个简化版的HashMap)因此查询效率和删除效率比较高
HashSet算法原理
Hash算法也称之为散列算法
最简单的散列公式:模9运算
现在有九个位置
用户要将数字放进这九个位置里面
那么怎么放了比较合理了?
使用模9运算
比如7%9 = 7 放在7的位置上
比如22%9 = 4 放在4的位置上
HashSet的用法