HashSet使用小结

HashSet 基于 HashMap 来实现的,是一个不允许有重复元素的集合。

HashSet 允许有 null 值。

HashSet 是无序的,即不会记录插入的顺序。

HashSet 不是线程安全的, 如果多个线程尝试同时修改 HashSet,则最终结果是不确定的。 您必须在多线程访问时显式同步对 HashSet 的并发访问。

HashSet 实现了 Set 接口。

1.构造 

HashSet<String> hashset=new HashSet();   //泛型也可以不写

2.基本操作

hashset.add("abc");  
hashset.clear(); //清空。
hashset.remove(Object o); //如果指定元素存在于此 set 中,则将其移除。
hashset.isEmpty() // 判空
hashset.contains(Object o) //如果此 set 包含指定元素,则返回 true。
hashset.size() // 返回此 set 中的元素的数量(set 的容量)。
System.out.println(hashset); //输出

3.遍历

for (String s:set) {
            System.out.println(s);
        }

通过迭代器遍历

Iterator iterator = set.iterator();
        while (iterator.hasNext()) {
            System.out.println(iterator.next());            
        }    

4.将指定集合元素全部放入hashset

public HashSet​(Collection<? extends E> c)
构造一个包含指定集合中元素的新集合。 HashMap使用默认加载因子(0.75)创建,初始容量足以包含指定集合中的元素。
List<Integer> a=new ArrayList<>();
a.add(1);
a.add(2);
HashSet<Integer> hashset=new HashSet<Integer>(a); //a中元素为{1,2}

 

posted on 2021-02-08 12:02  大鱼与小鱼  阅读(57)  评论(0)    收藏  举报

导航