Java学习笔记_Day21(Set)

Set系列集合

  • 无序:存取顺序不一致
  • 不重复:可以去除重复
  • 无索引:没有带索引的方法

实现类

  • HashSEet:无序,不重复,无索引
  • LinkedHashSet:有序,不重复,无索引
  • TreeSet:可排序,不重复,无索引

HashSEet

哈希值

创建一个默认长度16,默认加载因子0.75的数组

根据元素的哈希值和数组的长度计算出应存入的位置

int index=(数组长度-1)&哈希值

判断当前位置是否为null,如果是null直接存入

如果位置不为null则调用equals方法比较属性值

一样:不存,不一样:存入数组,形成链表

JDK8以后 当链表长度大于8,数组长度大于等于64时,自动转为红黑树

LinkedHashSet

相关推荐
二哈赛车手4 小时前
新人笔记---ApiFox的一些常见使用出错
java·笔记·spring
吃好睡好便好5 小时前
在Matlab中绘制横直方图
开发语言·学习·算法·matlab
栗子~~5 小时前
JAVA - 二层缓存设计(本地缓冲+redis缓冲+广播所有本地缓冲失效) demo
java·redis·缓存
YDS8295 小时前
DeepSeek RAG&MCP + Agent智能体项目 —— RAG知识库的搭建和接口实现
java·ai·springboot·agent·rag·deepseek
nashane5 小时前
HarmonyOS 6学习:CapsLock键失效诊断与长截图完整实现指南
学习·华为·harmonyos
未若君雅裁6 小时前
MyBatis 一级缓存、二级缓存与清理机制
java·缓存·mybatis
AI人工智能+电脑小能手7 小时前
【大白话说Java面试题 第65题】【JVM篇】第25题:谈谈对 OOM 的认识
java·开发语言·jvm
xian_wwq7 小时前
【学习笔记】AGC协调控制系统概述
笔记·学习
阿维的博客日记7 小时前
Nacos 为什么能让配置动态生效?(涉及 @RefreshScope 注解)
java·spring
雨辰AI7 小时前
SpringBoot3 + 人大金仓读写分离 + 分库分表 + 集群高可用 全栈实战
java·数据库·mysql·政务