随笔 - 172  文章 - 52  评论 - 6  阅读 - 17万

Java Set Summary

Java Set Summary

一、概要

Set 6个

类名 since 线程安全 element null 特点
Set 1.2
HashSet 1.2 No Yes 基于HashMap实现
TreeSet 1.2 No No 基于TreeMap实现
LinkedHashSet 1.4 No Yes 继承自HashSet
通过前后节点维护元素添加顺序
EnumSet 1.5 No No 用于枚举类型的专用Set实现
抽象类,有两个具体实现
CopyOnWriteArraySet 1.5 Yes Yes 基于CopyOnWriteArrayList实现
add操作通过List的addIfAbsent实现
只适合元素数量较少,且多读少写的场景
ConcurrentSkipListSet 1.6 Yes No 基于ConcurrentSkipListMap实现
元素可排序

二、探究

1、为什么没有ConcurrentHashSet?

# since 1.6
Set<String> jdk_6 = Collections.<String>newSetFromMap(new ConcurrentHashMap<>());

# since 1.8
Set<String> jdk_8 = ConcurrentHashMap.<String>newKeySet();
posted on   共感的艺术  阅读(23)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
历史上的今天:
2020-03-09 人形词云,根据图片黑白形状绘制词云
2020-03-09 汉化的simple词云
2020-03-09 对于数据的平均值处理
2020-03-09 文字替换成函数返回数字进行排序
2020-03-09 校验
2020-03-09 Python:使用lambda对列表(list)和字典(dict)排序
2020-03-09 python中的数据排序
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示