HashSet扩展AbstractSet并实现Set接口,它创建一个使用哈希表进行存储的集合,哈希表使用称为 hashing 的机制存储信息。
以下是HashSet类提供的构造函数的列表。
| Sr.No. | Constructor & Remark |
|---|---|
| 1 |
HashSet() 该构造函数构造一个默认的HashSet。 |
| 2 |
HashSet(Collection c) 此构造函数使用集合 c 的元素初始化哈希集。 |
| 3 |
HashSet(int capacity) 此构造函数将哈希集的容量初始化为给定的整数值容量。 随着将元素添加到HashSet中,容量会自动增长。 |
| 4 |
HashSet(int capacity,float fillRatio) 此构造函数根据其参数初始化哈希集的容量和填充率(也称为负载容量)。 此处的填充率必须在0.0到1.0之间,并且它确定哈希集在向上调整大小之前可以有多满。 |
除了从其父类继承的方法之外,HashSet定义以下方法-
| Sr.No. | Method & Remark |
|---|---|
| 1 |
boolean add(Object o) 如果指定的元素尚不存在,则将其添加到该集合中。 |
| 2 |
void clear() 从该集合中删除所有元素。 |
| 3 |
Object clone() 返回此HashSet的浅拷贝:元素本身未克隆。 |
| 4 |
boolean contains(Object o) 如果此集合包含指定的元素,则返回true。 |
| 5 |
boolean isEmpty() 如果此集合不包含任何元素,则返回true。 |
| 6 |
Iterator iterator() 返回此集合中元素的迭代器。 |
| 7 |
boolean remove(Object o) 从该集合中删除指定的元素(如果存在)。 |
| 8 |
int size() 返回此集合中的元素数。 |
HashSet 示例
以下程序说明了HashSet支持的几种方法-
import java.util.*;
public class HashSetDemo {
public static void main(String args[]) {
//创建一个哈希集
HashSet hs=new HashSet();
</span><span class="com">//将元素添加到哈希集</span><span class="pln">
hs</span><span class="pun">.</span><span class="kwd">add</span><span class="pun">(</span><span class="str">"B"</span><span class="pun">);</span><span class="pln">
hs</span><span class="pun">.</span><span class="kwd">add</span><span class="pun">(</span><span class="str">"A"</span><span class="pun">);</span><span class="pln">
hs</span><span class="pun">.</span><span class="kwd">add</span><span class="pun">(</span><span class="str">"D"</span><span class="pun">);</span><span class="pln">
hs</span><span class="pun">.</span><span class="kwd">add</span><span class="pun">(</span><span class="str">"E"</span><span class="pun">);</span><span class="pln">
hs</span><span class="pun">.</span><span class="kwd">add</span><span class="pun">(</span><span class="str">"C"</span><span class="pun">);</span><span class="pln">
hs</span><span class="pun">.</span><span class="kwd">add</span><span class="pun">(</span><span class="str">"F"</span><span class="pun">);</span><span class="pln">
</span><span class="typ">System</span><span class="pun">.</span><span class="kwd">out</span><span class="pun">.</span><span class="pln">println</span><span class="pun">(</span><span class="pln">hs</span><span class="pun">);</span><span class="pln">
}
}
这将产生以下输出-
[A, B, C, D, E, F]