• Java之Hashset(),LinkedHashset()


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

    对于 LinkedHashSet 而言,它继承与 HashSet,唯一区别是保存的数据是有序的,即保存顺序为12,3,6;LinkedHashSet 保存的顺序也是12,3,6,但是HashSet不是。
    但是两种使用的方法都一样,如下:

    方法总结

    Modifier and TypeMethod and Description
    booleanadd(E e) 如果没有已存在,则将指定的元素添加到该集合中。
    voidclear() 从这个集合中移除所有的元素。
    Objectclone() 返回该 HashSet实例浅拷贝:元素本身不是克隆。
    booleancontains(Object o) 如果这套 true返回包含指定的元素。
    booleanisEmpty() 返回 true如果这个集合不包含元素。
    Iteratoriterator() 返回此集合中元素的迭代器。
    booleanremove(Object o) 如果当前存在,则从该集合中移除指定的元素。
    intsize() 返回该集合中元素个数(其基数)。
    Spliteratorspliterator() 创建一个后期绑定和快速失败 Spliterator在这个集合中的元素。
    booleanadd(E e) 如果没有当前(可选操作),则将指定的元素添加到该集合中。
    booleanaddAll(Collection c) 如果没有当前(可选操作),将指定集合中的所有元素添加到该集合中。
    voidclear() 从这个集合中移除所有的元素(可选操作)。
    booleancontains(Object o) 如果这套 true返回包含指定的元素。
    booleancontainsAll(Collection c) 如果这套 true返回包含指定集合的所有元素。
    booleanequals(Object o) 将指定的对象与此设置的相等性进行比较。
    inthashCode() 返回此组的哈希代码值。
    booleanisEmpty() 返回 true如果这个集合不包含元素。
    Iteratoriterator() 返回此集合中元素的迭代器。
    booleanremove(Object o) 如果当前(可选操作),则从该集合中移除指定的元素。
    booleanremoveAll(Collection c) 从这个集合中移除包含在指定集合中的所有元素(可选操作)。
    booleanretainAll(Collection c) 仅保留包含在指定集合中的此集合中的元素(可选操作)。
    intsize() 返回该集合中元素个数(其基数)。
    default Spliteratorspliterator() 在这个集合中的元素创建一个 Spliterator
    Object[]toArray() 返回一个包含此集合中所有元素的数组。
    T[]toArray(T[] a) 返回包含此集合中的所有元素的数组;返回的数组的运行时类型是指定的数组的运行时类型。
    booleanequals(Object o) 将指定的对象与此设置的相等性进行比较。
    inthashCode() 返回此组的哈希代码值。
    booleanremoveAll(Collection c) 从这个集合中移除包含在指定集合中的所有元素(可选操作)。

    添加元素

    a.add(12);
    

    举个栗子:

    import java.util.HashSet;
    
    public class java_learn {
        public static void main(String args[]) {
            HashSet<Integer> a = new HashSet();
            a.add(12);
            a.add(13);
            a.add(18);
            a.add(4);
            a.forEach(j -> System.out.println(j));
        }
    }
    

    在这里插入图片描述

    判断元素是否存在

    我们可以使用 contains() 方法来判断元素是否存在于集合当中:

    a.contains(12);
    

    删除元素

    我们可以使用 remove() 方法来删除集合中的元素:

    a.remove(12);// 删除元素12,删除成功返回 true,否则为 false
    

    删除集合中所有元素可以使用 clear 方法:

    a.clear();  
    
  • 相关阅读:
    Java基础:Java基本概念
    5+非肿瘤生信思路经典思路,没有机器学习,WGCNA也能撑起大局,还有多个实验验证的强势助攻
    基础算法学习|高精度
    MySQL查询性能优化七种武器之索引下推
    selenium基本使用、无头浏览器(chrome、FireFox)、搜索标签
    JVM虚拟机详解
    剑指offer(C++)-JZ10:斐波那契数列(时间复杂度O(logn)解法)
    mongodb入门(四)
    萤火虫模糊回归算法(Matlab代码实现)
    ArrayList与顺序表
  • 原文地址:https://blog.csdn.net/weixin_43788986/article/details/126949712