Java 集合框架:Java 中的 Set 集合(HashSet & LinkedHashSet & TreeSet)特点与实现解析

大家好,我是栗筝i,这篇文章是我的 “栗筝i 的 Java 技术栈” 专栏的第 017 篇文章,在 “栗筝i 的 Java 技术栈” 这个专栏中我会持续为大家更新 Java 技术相关全套技术栈内容。专栏的主要目标是已经有一定 Java 开发经验,并希望进一步完善自己对整个 Java 技术体系来充实自己的技术栈的同学。与此同时,本专栏的所有文章,也都会准备充足的代码示例和完善的知识点梳理,因此也十分适合零基础的小白和要准备工作面试的同学学习。当然,我也会在必要的时候进行相关技术深度的技术解读,相信即使是拥有多年 Java 开发经验的从业者和大佬们也会有所收获并找到乐趣。

相较于 List 集合与 Map 集合,Set 集合可以讨论的点其实很少,这主要的原因是因为无论是哪一种 Set 集合的实现类其实都是基于 Map 集合的,而如果深究其原理,其实就是去深究 Map 的实现,而我不打算对 Map 的解读放在 Set 的章节…

当然除了主要实现之外,Set 也是有很多值得我们关注的特点的,比如他的无序性,对并发流、序列化以及非序列化的实现,以及主要实现类 HashSet、TreeSet、LinkedHashSet 三者的区别,只是由于可能真正值得关注的点不是很多,所以我在本系列中将整个 Set 压缩为了一篇文章。


文章目录

      • 1、Set 集合介绍
        • 1.1、Set 接口概述
        • 1.2、实现类 HashSet
        • 1.3、实现类 TreeSet
        • 1.4、实现类 LinkedHashSet
        • 1.5、三种 Set 集合对比
      • 2、HashSet 底层实现
        • 2.1、HashSet 构造函数实现
        • 2.2、HashSet 主要方法实现
      • 3、TreeSet 底层实现
        • 3.1、TreeSet 构造方法实现
        • 3.2、TreeSet 特色方法实现


1、Set 集合介绍

1.1、Set 接口概述

Setjava.util 包下集合框架中一个接口,它是 Collection 接口的一个子接口,

你可能感兴趣的:(栗筝i,的,Java,技术栈,#,Java,基础,栗筝i,的,Java,技术栈,Java基础,Java集合,Java,Set,Set,集合)