当前位置: 首页 > news >正文

集合详解之(三)单列集合接口Set及具体子类HashSet、TreeSet

文章目录

  • 🐒个人主页
  • 🏅JavaSE系列专栏
    • 📖前言:
    • 🎀Set集合接口
    • 🎀HashSet实现类
    • 🎀TreeSet实现类
    • 🪅HashSet类常用方法:
    • 🪅TreeSet类常用方法:

🐒个人主页

🏅JavaSE系列专栏

📖前言:

本篇博客主要以介绍Set集合以及其两个具体子类HashSet、TreeSet的用途和常用方法

🎀Set集合接口

Set接口是Collection的子接口,Set集合不按照插入元素的顺序,Set 集合不允许包含相同的元素,拥有自动去重功能,不支持下标调用;此外,Set集合可以与List集合相互转化~Set集合底层实际上是Map集合中的键所组成的单列集合

🎀HashSet实现类

HashSet集合不按照插入元素的顺序排序,而是以元素哈希值的大小来排序,自动实现去重功能。HashSet集合底层实际上是HashMap集合中的键所组成的单列集合

🎀TreeSet实现类

HashSet集合不按照插入元素的顺序排序,而是以自然数顺序的大小来排序,自动实现去重功能。TreeSet集合底层实际上是TreeMap集合中的键所组成的单列集合

🪅HashSet类常用方法:

构造方法方法内容介绍
HashSet(单列集合C)📖【把单列集合C转为HashSet集合,去重,根据其元素的哈希值进行排序】
常用方法 方法内容介绍
boolean add(E e)📖【父类方法:向集合尾部添加元素】
void clear()📖【父类方法:清空集合】
boolean contains(Object o)📖【父类方法:集合是否包含o】
boolean isEmpty()📖【是否为空】
Iterator iterator()📖【返回此集合中元素的迭代器】
boolean remove(Object o)📖【如果存在,则从该集合中删除指定的元素】
int size()📖【元素个数】

🪅TreeSet类常用方法:

构造方法方法内容介绍
TreeSet(单列集合C)📖【把单列集合C转为TreeSet集合,根据其元素的自然排序进行排序】
常用方法 方法内容介绍
boolean add(E e)📖【父类方法:向集合尾部添加元素】
boolean addAll(Collection<? extends E> c)📖【可以直接添加一个单列集合】
E ceiling(E e)📖【返回此集合中>=e的最小元素,如果没有此元素,则返回 null 】
E floor(E e)📖【返回此集合中<=e的最大元素,如果没有这样的元素,则返回 null 】
E higher(E e)📖【返回此集合中>e的最小元素,如果没有此元素,则返回 null 】
E lower(E e)📖返回此集合中<e的最大元素,如果没有这样的元素,则返回 null 】
void clear()📖【父类方法:清空集合】
boolean contains(Object o)📖【父类方法:集合是否包含o】
E first()📖【返回集合第一个元素–最小值】
E last()📖【返回集合最后一个元素–最大值】
boolean isEmpty()📖【是否为空】
Iterator iterator()📖【返回此集合中元素的迭代器】
int size()📖【元素个数】
E pollFirst()📖【拿到并删除第一个(最小)元素,如果该集合为空返回 null】
E pollLast()📖【拿到并删除最后一个(最大)元素,如果该集合为空返回null】
boolean remove(Object o)📖【如果存在,则从该集合中删除指定的元素】

相关文章:

集合详解之(三)单列集合接口Set及具体子类HashSet、TreeSet

文章目录&#x1f412;个人主页&#x1f3c5;JavaSE系列专栏&#x1f4d6;前言&#xff1a;&#x1f380;Set集合接口&#x1f380;HashSet实现类&#x1f380;TreeSet实现类&#x1fa85;HashSet类常用方法&#xff1a;&#x1fa85;TreeSet类常用方法&#xff1a;&#x1f41…...

力扣刷题笔记22—— 矩阵中的路径(回溯)/pair的学习

矩阵中的路径&#xff08;回溯&#xff09;/pair的学习问题分析示例代码pair学习问题 来自力扣&#xff1a; 给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 单词必须按…...

Spring学习1

一、Spring简介 Spring翻译过来就是春天的意思&#xff0c;其实也就是给软件行业带来了春天2002年&#xff0c;首次推出Spring框架的雏形&#xff0c;interface21框架Spring框架就是以interface21框架为基础&#xff0c;经过重新设计&#xff0c;并不断丰富&#xff0c;在2004年…...

Keep再闯IPO,三年亏损16亿,会员留存率跌破70%

“运动科技第一股”来了&#xff1f; 3月28日&#xff0c;线上健身平台的运营方、北京卡路里科技有限公司&#xff08;下称“Keep”&#xff09;更新招股书&#xff0c;再次闯关港股IPO。 Keep是一家在线健身平台&#xff0c;主要产品包括在线健身内容、智能健身设备和配套运…...

软件测试分类详解

一图看清软件测试分类 一、按测试技术分&#xff08;是否查看代码&#xff09; **1. 黑盒测试**&#xff1a;软件功能是否正常使用【功能的测试】 **2. 白盒测试**&#xff1a;代码逻辑是否正确【结构的测试】 **3. 灰盒测试**&#xff1a;介于两者之间的测试&#xff0c;也…...

网站怎么优化出排名

网站怎么优化出排名&#xff0c;独立站SEO优化应该怎么做&#xff1f;#独立站#推广优化#SEO优化 今天跟大家聊一下独立站的SEO&#xff0c;是指个人或者小型的企业对独立站进行一个优化&#xff0c;以提高他在搜索引擎中的排名和流量&#xff0c;从而吸引更多的这个客户和用户。…...

h5|web页面嵌套iframe传参给cocosCreator

h5|web页面嵌套iframe传参给cocosCreator 目录 一、快速浏览 二、详细实现与项目代码 三、安全性评估——iframe 实现效果: 一、快速浏览 在h5页面中&#xff0c;使用JavaScript获取需要传递的参数&#xff0c;如下&#xff1a; var token ZHESHINIDETOKEN; var phone 11…...

阿里云安全产品Web应用防火墙是什么?有什么作用?

Web应用防火墙是一款网站Web应用安全的防护产品&#xff0c;拦截针对您网站发起的Web通用攻击&#xff08;如SQL注入、XSS跨站等&#xff09;或是应用资源消耗型攻击&#xff08;CC&#xff09;&#xff0c;同时也可以满足您网站从流量管理角度来防御业务风险&#xff0c;例如B…...

【SSM】Spring6(九.代理模式)

文章目录1.代理模式2. 静态代理3. 动态代理3.1 JDK动态代理3.2 CGLIB动态代理1.代理模式 代理模式主要有两种&#xff1a; 静态代理模式 动态代理模式 2. 静态代理 有这样一个业务&#xff1a;订单的生成&#xff0c;修改&#xff0c;查看详情。实现如下 package com.sdnu.…...

【1017. 负二进制转换】

来源&#xff1a;力扣&#xff08;LeetCode&#xff09; 描述&#xff1a; 给你一个整数 n &#xff0c;以二进制字符串的形式返回该整数的 负二进制&#xff08;base -2&#xff09;表示。 注意&#xff0c; 除非字符串就是 "0"&#xff0c;否则返回的字符串中不…...

C语言实现插入排序与希尔排序

目录 一&#xff0c;插入排序 插入排序C语言实现&#xff08;升序&#xff09; 1&#xff0c;将新元素插入到有序序列 2&#xff0c;循环的开始与终止 二&#xff0c;希尔排序 希尔排序C语言实现&#xff08;升序&#xff09; 1&#xff0c;单趟&#xff1a; 2&#x…...

第九章-DOM与CSS

style属性 文档中每个元素节点都有一个属性style。style属性包含着元素样式&#xff0c;查询这个属性将返回一个对象而不是一个简单的字符串。样式都存放在这个style对象的属性里。 var element getElementById("example") //查看颜色属性 element.style.color //…...

蓝桥杯真题练习

小蓝在玩一个寻宝游戏, 游戏在一条笔直的道路上进行, 道路被分成了 nn 个方格, 依次编号 1 至 nn, 每个方格上都有一个宝物, 宝物的分值是一个整数 (包括正数、负数和零), 当进入一个方格时即获得方格中宝物的分值。小蓝可 以获得的总分值是他从方格中获得的分值之和。 小蓝开始…...

插入排序的简单理解

详细描述 插入排序的基本思想是&#xff1a;将一个记录插入到已经排好序的有序表中&#xff0c;从而得到一个新的、记录数增 1 的有序表。 在其实现过程中使用双层循环&#xff0c;外层循环针对除了第一个元素之外的所有元素&#xff0c;内层循环针对当前元素前面的有序表进行…...

Springboot框架集成Websocket通信方式

Websocket实现了“服务器”主动向“客户端”发送数据,改变了以往通过轮询、长轮训、长连接等方式获取服务器端数据的方式。 一、Websocket有三种不同的用场景,单播、广播和组播; (一)、单播(Unicast) 单播是客户端与服务器之间的“一对一”的连接。是在一个单个的发送…...

将json数据分组

在工作中有时需要根据业务需要&#xff0c;将大量数据进行处理分成几个一组 // 例如要将下方数据进行处理 var stuCount [{"id": "1612321835288","libraryCode": "D","regionCode": "A","positionCode&qu…...

从零开始实现一个C++高性能服务器框架----Socket模块

此项目是根据sylar框架实现&#xff0c;是从零开始重写sylar&#xff0c;也是对sylar丰富与完善 项目地址&#xff1a;https://gitee.com/lzhiqiang1999/server-framework 简介 项目介绍&#xff1a;实现了一个基于协程的服务器框架&#xff0c;支持多线程、多协程协同调度&am…...

ld: library not found for -lcrt0.o

ld: library not found for -lcrt0.o 背景&#xff1a; Mac 系统编译的时候报错 语言&#xff1a;golang 原因&#xff1a; 代码使用了静态编译&#xff0c;-static。stack overflow 上说 This option will not work on Mac OS X unless all libraries (including libgcc.a…...

接口测试和功能测试的区别有哪些?说一些你不知道的知识

目录 接口测试和功能测试的区别 目的 测试范围 测试方法 重要性 ​编辑 举个例子 对于接口测试 对于功能测试 ​编辑 总结 接口测试和功能测试是软件测试中的两种常见测试类型&#xff0c;主要用于评估软件系统的质量。尽管这两种测试都是为了评估软件系统的性…...

深度学习实战——不同方式的模型部署(CNN、Yolo)

忆如完整项目/代码详见github&#xff1a;https://github.com/yiru1225&#xff08;转载标明出处 勿白嫖 star for projects thanks&#xff09; 目录 系列文章目录 一、实验综述 1.实验工具及及内容 2.实验数据 3.实验目标 4.实验步骤 二、ML/DL任务综述与模型部署知识…...

ViVe完整贡献指南:从入门到精通的开源参与秘籍

ViVe完整贡献指南&#xff1a;从入门到精通的开源参与秘籍 【免费下载链接】ViVe C# library and console app for using new feature control APIs available in Windows 10 version 2004 and newer 项目地址: https://gitcode.com/gh_mirrors/vi/ViVe ViVe是一个C#库&…...

终极Node.js无头浏览器测试指南:Zombie.js与Mocha集成实战

终极Node.js无头浏览器测试指南&#xff1a;Zombie.js与Mocha集成实战 【免费下载链接】zombie Insanely fast, full-stack, headless browser testing using node.js 项目地址: https://gitcode.com/gh_mirrors/zo/zombie 在当今快速发展的Web开发领域&#xff0c;Zomb…...

Phan静态分析工具:10个自动化代码质量检查的终极指南

Phan静态分析工具&#xff1a;10个自动化代码质量检查的终极指南 【免费下载链接】phan Phan is a static analyzer for PHP. Phan prefers to avoid false-positives and attempts to prove incorrectness rather than correctness. 项目地址: https://gitcode.com/gh_mirro…...

在Windows 11上用VirtualBox搞定WRF-Hydro 5.2.0:一个水文模型小白的Ubuntu 22.04虚拟机避坑实录

在Windows 11上用VirtualBox搞定WRF-Hydro 5.2.0&#xff1a;一个水文模型小白的Ubuntu 22.04虚拟机避坑实录 第一次接触WRF-Hydro时&#xff0c;我盯着满屏的命令行代码和复杂的依赖关系&#xff0c;感觉像在破解某种外星密码。作为一名水文专业的研究生&#xff0c;我的Linux…...

半方差函数四大参数保姆级解读:从块金值到变程的空间自相关分析

半方差函数四大参数保姆级解读&#xff1a;从块金值到变程的空间自相关分析 刚接触地理统计时&#xff0c;看到"半方差函数"这个术语总让人望而生畏。但当我第一次用气象站数据绘制出那条神奇的曲线时&#xff0c;突然理解了空间数据背后隐藏的对话——就像侦探通过蛛…...

Pixel Mind Decoder 效果惊艳展示:多语言文本情绪解码对比

Pixel Mind Decoder 效果惊艳展示&#xff1a;多语言文本情绪解码对比 1. 情绪解码技术的新突破 在数字沟通日益频繁的今天&#xff0c;准确理解文字背后的情绪成为AI领域的重要挑战。Pixel Mind Decoder作为新一代多语言情绪分析工具&#xff0c;通过深度学习模型实现了对文…...

3个技巧快速解锁百度网盘SVIP下载特权

3个技巧快速解锁百度网盘SVIP下载特权 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 你是否曾因百度网盘Mac版的下载速度而苦恼&#xff1f;普通用户下…...

掌握BepInEx:Unity游戏扩展全家桶的零门槛实践指南

掌握BepInEx&#xff1a;Unity游戏扩展全家桶的零门槛实践指南 【免费下载链接】BepInEx Unity / XNA game patcher and plugin framework 项目地址: https://gitcode.com/GitHub_Trending/be/BepInEx &#x1f50d; 游戏模组管理的行业痛点与解决方案 在Unity游戏生态…...

轻量级OpenClaw方案对比:nanobot与标准部署性能测试

轻量级OpenClaw方案对比&#xff1a;nanobot与标准部署性能测试 1. 测试背景与动机 最近在为一台闲置的2核4G云主机寻找合适的自动化方案时&#xff0c;我遇到了一个典型的技术选型问题&#xff1a;标准OpenClaw部署对资源要求较高&#xff0c;而新出现的nanobot方案号称是&q…...

PCB布局设计规范与工程实践要点

PCB布局设计思路与工程实践指南1. 布局设计基本原则1.1 结构约束优先原则在PCB布局初期&#xff0c;必须优先考虑机械结构约束条件&#xff1a;定位安装孔、连接器等结构件需严格按照外壳设计文件放置连接器1脚方向必须与结构设计匹配&#xff0c;避免装配错误元件高度不得超过…...