java集合
Java集合源码分析
细听风声
思绪如风,来得快,去的也快。
展开
-
谈HashMap,HashSet,HashTable容易被我们忽视的问题
谈谈HashMap,HashSet,HashTable 我们容易忽略的一些细节。原创 2020-03-17 17:51:07 · 1360 阅读 · 0 评论 -
java8 LinkedHashMap源码分析
继承了HashMap 实现了 Map接口public class LinkedHashMap<K,V> extends HashMap<K,V> implements Map<K,V>双向链表头结点transient LinkedHashMap.Entry<K,V> head;双向链表尾结点 transient LinkedHashMa...原创 2020-03-16 12:53:51 · 152 阅读 · 0 评论 -
java8 Vector源码分析
Vector特点底层基于动态数组实现所有操作都加上了synchronized操作,属于线程安全的容器类。可以把Vector看成是一个线程安全的ArrayList构造函数 //默认构造函数 public Vector() { //给的初始容量为10 this(10); } public Vector(int initia...原创 2020-03-16 11:27:52 · 174 阅读 · 0 评论 -
java8 LinkedList源码分析
LinkedList特点:数据结构用双向链表实现,增删元素性能较好。实现了所有List的接口。可以插入null元素。不是线程安全的。类定义继承AbstractSequentialList实现了List,Deque,Cloneable,Serializable接口。 public class LinkedList<E> exte...原创 2020-03-13 14:18:00 · 185 阅读 · 0 评论 -
java ArrayDeque源码图析
arrayDeque 是一个用数组实现的没有容量限制的双端队列。优缺点:1.没有容量限制。2.多线程环境下不支持并发访问。3.不支持插入空元素。4.当把LinkedList 用做queue 的时候,把Stack 用做stack 时,arrayDeque 速度会比他们更快。 源码分析:ArrayDeque 的构造 public ArrayDeque(原创 2015-06-19 14:58:25 · 2560 阅读 · 1 评论 -
Java8 ArrayList源码分析
java8源码,,ArrayList 总的来说就是一个动态数组默认构造一个空数组的arraylist分析几个重要的方法add(E)方法每次调用此方法,会先检查是否需要扩容,,ensureCapacityInternal(size + 1) ,,,默认 1.5倍扩容 int newCapacity = oldCapacity + (oldCapacity >> 1);...原创 2020-03-06 11:30:35 · 213 阅读 · 0 评论 -
Java8 HashMap源码分析
HashMap的特点存储key-value键值对,允许key,value为空,遍历无序。原创 2020-03-06 11:29:32 · 194 阅读 · 0 评论