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

集合详解之(三)单列集合接口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)📖【如果存在,则从该集合中删除指定的元素】

http://www.kler.cn/a/5716.html

相关文章:

  • 【算法C++】数字分组求偶数和
  • Vue.config.productionTip = false 不起作用的问题及解决
  • 基类指针指向派生类对象,基类指针的首地址永远指向子类从基类继承的基类首地址
  • YOLOv5改进 | CARAFE提高精度的上采样方法
  • 统计模型的Flops和Params
  • Zustand selector 发生 infinate loops的原因以及解决
  • 【redis】RBD-内存快照
  • Vue-封装一个通用的分页组件,并实现全局注册组件使用
  • cyberdefenders—-恶意软件流量分析 2
  • 【分享】如何写出整洁的代码?
  • 《数学建模实战攻略:引言》
  • 第02章_MySQL环境搭建
  • 蓝牙耳机品牌哪个好?好用的无线蓝牙耳机推荐
  • 蓝牙耳机什么牌子便宜耐用?2023年好用实惠的蓝牙耳机推荐
  • 2023给自己规划一个新的起点---Android车载工程师
  • this关键字
  • 【Python入门第四十三天】Python丨NumPy 数据类型
  • Tars请求过程与协议分析
  • 2023蓝桥杯省模拟赛——滑行
  • 二叉树的前中后序遍历以及求深度、叶子节点和二叉树的重建
  • PE文件格式
  • Linux常用命令之压缩解压命令
  • 华为OD机试题【打折买水果】用 C++ 编码,速通
  • 优思学院 | 质量工程师的职责有哪些?
  • 老鼠迷宫,汉诺塔,八皇后,回溯算法案例
  • Log4j2的RollingFileAppender详解