Java HashSet
HashSet 基于 HashMap 来实现的,是一个不允许有重复元素的集合。
HashSet 允许有 null 值。
HashSet 是无序的,即不会记录插入的顺序。
HashSet 不是线程安全的, 如果多个线程尝试同时修改 HashSet,则最终结果是不确定的。 您必须在多线程访问时显式同步对 HashSet 的并发访问。
HashSet 实现了 Set 接口。


import java.util.HashSet;
public class Hashset {
public static void main(String[] args) {
HashSet<String> sites = new HashSet<String>();
sites.add("Google");
sites.add("Runoob");
sites.add("Taobao");
sites.add("Zhihu");
sites.add("Runoob"); // 重复的元素不会被添加
System.out.println(sites);
System.out.println(sites.contains("Zhihu")); //contains的查找复杂度是O(1)
sites.clear();
System.out.println(sites);
for (String i : sites)
System.out.println(i);
}
}
博客介绍了 Java HashSet,它基于 HashMap 实现,是不允许重复元素的集合,允许有 null 值,且无序。同时,HashSet 不是线程安全的,多线程访问时需显式同步并发访问,它还实现了 Set 接口。

被折叠的 条评论
为什么被折叠?



