网站首页 > 精选教程 正文
最近总结了下java集合知识,绘制成知识脑图,便于理解记忆。
基本概念
Collection:是集合的根接口,定义了一系列基础方法
Set:是不可重复集,即集合中不能包含重复元素
List:有序集合,集合中允许包含重复元素
Map:是一种key-value的存储集合,不能包含重复的key,每个key只能映射到同一个value
HashMap:根据键的hashcode值进行存储,最多允许一个key的值为null,允许多个value的值为null,默认容量是16,加载因子是0.75f,每次扩容一倍,是一种异步式线程不安全的映射,如果想要实现线程安全,如下即可
Map
// 使map变为线程安全 Mapmap1 = Collections.synchronizedMap(map);
HashTable:是一种遗留类,常用功能与HashMap类似,不过该类继承自Dictionary类,不允许键值为null,默认初始容量是11,加载因子也是0.75f,是一种同步式线程安全的映射,其并发性不如ConcurrentHashMap,因为ConcurrentHashMap引入了分段锁,而HashTable对get/put等所有操作都加了synchronized,相当于锁了整张表,将所有的操作串行化。
ConcurrentHashMap:线程安全的map,允许多个修改操作并发进行,其关键在于使用了分段锁。它使用多个锁来控制对hash表的不同部分进行的修改。ConcurrentHashMap内部使用段(Segment)来表示这些不同的部分,每个段其实就是一个小的hashtable,它们有自己的锁。只要多个修改操作发生在不同的段上,它们就可以并发进行。
LinkedHashMap:是HashMap的一个子类,保存了元素的插入顺序,在遍历时,先得到的元素肯定是先插入的
TreeMap:实现SortedMap接口,能够把它保存的记录根据键排序,默认是按键值的升序排序,也可以指定排序的比较器,当用Iterator遍历TreeMap时,得到的记录是排过序的。在使用TreeMap时,key必须实现Comparable接口或者在构造TreeMap传入自定义的Comparator,否则会在运行时抛出java.lang.ClassCastException类型的异常。
努力工作,开心生活,放松一下:
专注java职场经验,技术分享,欢迎关注公众号:程序秘籍
- 上一篇: 理解java的集合框架看看这几张图就够了
- 下一篇: Java中的Map集合、散列表、红黑树介绍
猜你喜欢
- 2024-11-30 java基础:ArrayList集合
- 2024-11-30 java高级特性之集合篇
- 2024-11-30 Java中的Map集合、散列表、红黑树介绍
- 2024-11-30 理解java的集合框架看看这几张图就够了
- 2024-11-30 Java集合-Collection
- 2024-11-30 15集动画演示Java集合视频总结
- 2024-11-30 Java集合-Iterable
- 2024-11-30 Java集合核心内容之数组和链表,大厂越来越注重基础了,建议收藏
- 2024-11-30 Java面试篇基础部分-Java中的集合类
- 2024-11-30 Java集合Set 集合、List和Collections类
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- nginx反向代理 (57)
- nginx日志 (56)
- nginx限制ip访问 (62)
- mac安装nginx (55)
- java和mysql (59)
- java中final (62)
- win10安装java (72)
- java启动参数 (64)
- java链表反转 (64)
- 字符串反转java (72)
- java逻辑运算符 (59)
- java 请求url (65)
- java信号量 (57)
- java定义枚举 (59)
- java字符串压缩 (56)
- java中的反射 (59)
- java 三维数组 (55)
- java插入排序 (68)
- java线程的状态 (62)
- java异步调用 (55)
- java中的异常处理 (62)
- java锁机制 (54)
- java静态内部类 (55)
- java怎么添加图片 (60)
- java 权限框架 (55)
本文暂时没有评论,来添加一个吧(●'◡'●)