HashSet和TreeSet

 

 

Set接口

1.HashSet

概述

HashSet实现Set接口,由哈希表支持,它不保证set的迭代顺序,特别是它不保证该顺序永久不变,运行使用null。

public HashSet() {
   map = new HashMap<>();
}

 

add方法

public boolean add(E e) {
   return map.put(e, PRESENT)==null;
}

本质上是将数据保持在 HashMap中 key就是我们添加的内容,value就是我们定义的一个Object对象

特点

底层数据结构是哈希表,HashSet的本质是一个"没有重复元素"的集合,他是通过HashMap实现的.HashSet中含有一个HashMap类型的成员变量map.

2.TreeSet

概述

基于TreeMap的 NavigableSet实现。使用元素的自然顺序对元素进行排序,或者根据创建 set 时提供的 Comparator进行排序,具体取决于使用的构造方法。

public TreeSet() {
   this(new TreeMap<E,Object>());
}

 

本质是将数据保存在TreeMap中,key是我们添加的内容,value是定义的一个Object对象。

posted @   小白冲  阅读(110)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示