首页 > 编程语言 >Java 集合 - Set 实现类

Java 集合 - Set 实现类

时间:2023-01-08 12:33:07浏览次数:45  
标签:map Set Java HashMap 构造方法 private 集合 new

Set 具有与 Collection 完全一样的接口,只是行为上不同,Set 不保存重复的元素。

HashSet

不允许出现重复元素,不保证集合中元素的顺序,允许包含值为null的元素,但最多只能一个。
构造方法

private transient HashMap<E,Object> map;
public HashSet() {
    map = new HashMap<>();
}

添加方法

private static final Object PRESENT = new Object();
public boolean add(E e) {
    return map.put(e, PRESENT)==null;
}

LinkedHashSet

继承 HashSet 具有可预知迭代顺序的 Set 接口的哈希表和链接列表实现。
构造方法

private transient HashMap<E,Object> map;
LinkedHashSet(int initialCapacity, float loadFactor, boolean dummy) {
    map = new LinkedHashMap<>(initialCapacity, loadFactor);
}

TreeSet

该类实现了 Set 接口,可以实现排序等功能。
构造方法

private transient NavigableMap<E,Object> m;
public TreeSet() {
    this(new TreeMap<E,Object>());
}

标签:map,Set,Java,HashMap,构造方法,private,集合,new
From: https://www.cnblogs.com/feiqiangsheng/p/17034398.html

相关文章

  • Java集合中迭代器的原理
    我们通过一个小案例进行分析:publicclassIteratorDemo1{publicstaticvoidmain(String[]args){//创建集合对象Collection<String>c=new......
  • java多线程知识点总结
    一、线程的三种创建方法1-1继承Thread继承thread方法然后重写run方法,在用start开启线程。代码实现:Threadt=newThread(){@Overridepu......
  • java弹幕视频网站源码
    简介Java基于ssm的弹幕视频系统,用户注册后可以上传视频进行投稿,也可以浏览视频发送弹幕,在个人中心管理视频、管理弹幕、管理评论等。管理员可以管理视频弹幕评论,查看统计......
  • java食堂库存管理系统源码
    简介Java基于sprinboot开发的食堂库存管理系统,用于统计食堂库存的,包含采购、入库、出库、折损等功能。演示视频https://www.bilibili.com/video/BV1Jf4y1C7vq/?share_s......
  • java基于ssm空气质量检测系统源码网站空气质量监测源码
    简介Java基于ssm的空气质量检测系统,检测设备检测一定范围内的企业空气指数,如果有污染则地图显示红色标记。演示视频https://www.bilibili.com/video/BV1GK4y1W7JB/?shar......
  • Snmp网络协议及Java开发相关
    主要包:snmp4j  完整demo:​​http://avery-leo.iteye.com/blog/213980​​  课件​​https://wenku.baidu.com/view/3862136127d3240c8447ef19.html​​ ......
  • 为什么 java 容器推荐使用 ExitOnOutOfMemoryError 而非 HeapDumpOnOutOfMemoryError
    前言好久没写文章了,今天之所以突然心血来潮,是因为昨天出现了这样一个情况:我们公司的某个手机APP后端的用户(customer)微服务出现内存泄露,导致OutOfMemoryError,但......
  • java环境搭建
    Day2-jdk下载(8u201免费)下载地址https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html安装地址    安装完后设置系统变量如下四......
  • 使用 JavaScript 创建一个兔年春节倒数计时器
    我们可以通过多种方式构建JavaScript倒数计时,我在本教程中展示的这个​​兔年春节倒数计时器​​是由HTMLCSS和JavaScript创建的。它的工作方式非常简单,需要两种类......
  • [C++/Java/Py/C#/Ruby/Swift/Go/Scala/Kotlin/Rust/PHP/TS/Elixir/Dart/Racket/Erlang
    目录题解地址代码cppjavapython3C#rubyswiftgolangscalakotlinrustphptypescriptelixirdartracketerlang题解地址https://leetcode.cn/problems/counting-words-with-a-g......