![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java集合
gentle@xue
这个作者很懒,什么都没留下…
展开
-
HashMap的源码分析
HashMap 简介HashMap 是一个散列表, 它存储的内容是键值对(key - value)映射。HashMap 继承于 AbstractMap, 实现了Map, Cloneable,Serializable 接口。HashMap 不是线程安全的, 不适用于多线程中, 此外,HashMap中的映射不是有序的。HashMap 里面是一个数组,然后数组中每个元素是一个单项链表。图中En...原创 2019-04-17 23:23:20 · 116 阅读 · 0 评论 -
LinkedHashMap的源码分析
LinkedHashMap 简介LinkedHashMap 继承了 HashMap, 实现了map接口。所以 LinkedHashMap 包含了 HashMap 的所有功能, 它是一个关联数组,线程不安全,并且key值,value值允许为空。LinkedHashMap 与 HashMap 不同之处是它支持写入顺序排序,访问顺序排序。顺序展示效果示例代码public static void...原创 2019-04-17 23:25:22 · 125 阅读 · 0 评论 -
HashSet的源码分析
HashSet 简介HashSet 是一个没有重复元素的集合。它是由 HashMap 实现的, 无序且允许空值。HashSet 是非线程同步的,没有提供数据访问保护,在多线程环境中容易导致多个线程更改数据后造成数据脏读。key 值允许为空。HashSet 的添加方法//map是一个HashMap<E, Object>对象,HashSet是由一个HashMap实例支持的pr...原创 2019-04-17 23:26:37 · 79 阅读 · 0 评论 -
ArrayList/Vector的源码分析
ArrayListArrayList 是动态数组,其实就是Array的复杂版本,它提供了动态增加和减少元素的功能,实现了List,RandomAccess, Collection接口,ArrayList不是线程安全的,建议在单线程中使用ArrayList。ArrayList 包含两个重要属性分别是:/*** elementData;* transient 关键字修饰表示防止此字段被序列化...原创 2019-04-17 23:27:15 · 132 阅读 · 0 评论 -
LinkedList的源码分析
LinkedList 简介LinkedList 是继承于AbstractSequentialList的双向链表, 它可以被当做堆栈,队列或双端队列使用。LinkedList 实现了List接口, 能对它进行队列操作。LinkedList 实现了Cloneable接口, 覆盖了函数clone(), 支持克隆。LinkedList 实现了Deque接口, 能将 LinkedList当做双端队列...原创 2019-04-17 23:27:49 · 158 阅读 · 0 评论