Java集合源码
wintershii
越努力越幸运
展开
-
Java集合源码—LinkedList
LinkedList源码分析1.LinkedList概述LinkedList底层是一个双链表(非循环), 是一个直线型的链表结构因为实现方式是链表, 所以在插入或删除时的效率较高, 但是因为其内存空间并不一定连续, 遍历时需要从头到尾访问一遍, 所以查找的效率并不是很高public class LinkedList<E> extends AbstractSequen...原创 2019-08-03 11:54:01 · 106 阅读 · 0 评论 -
Java集合源码—ArrayList
ArrayList源码分析1.ArrayList概述ArrayList是Java中常用的集合之一, 其底层实现是数组.因为数组在内存空间中是连续的, 所以他的特点就是查找数据快, 但因为插入和删除元素都需要移动其他元素的位置, 所以插入和删除会慢一些. 另外, ArrayList是可以动态增长和缩减的索引序列.public class ArrayList<E> extends A...原创 2019-08-01 19:37:32 · 128 阅读 · 0 评论 -
Java集合源码—HashMap
HashMap源码分析1.概述HashMap是一种基于哈希算法的散列查找集合.其实现方式主要是数组+链表. 其存储键值对, 并根据键的哈希值作运算进行键值对的存储和查询. 当一个键的hash值与另一个键的hash值做运算后得到的在数组中位置相同, 这就说明出现了"哈希冲突", 所以采用链表, 将他们链成一条链表. 当这个链表长度过长时, 就会将该链表转化为红黑树提高性能而HashMap的内部...原创 2019-08-09 15:51:03 · 166 阅读 · 0 评论 -
Java并发—ConcurrentHashMap
Java并发容器—ConcurrentHashMap1.JDK1.7版本 jdk1.7的实现结构图如下所示[外链图片转存失败(img-Fy93gKVd-1566009849146)(/home/shidongxuan/.config/Typora/typora-user-images/1566002052129.png)]CurrentHashMap是由Segment数组和HashEnt...原创 2019-08-17 10:44:25 · 164 阅读 · 0 评论