
集合
OnlyGky
欢迎大家去我的掘金博客围观:
https://juejin.cn/user/3034307824470606/activities
展开
-
Java集合系列---ConcurrentHashMap源码解析
ConcurrentHashMap是Java并发容器的一员,jdk1.8以后的基本的数据结构和HashMap相似,也是选用了数组+链表/红黑树的结构,在jdk1,.7以前则是采用了分段锁的技术。ConcurrentHashMap所有操作都是线程安全的,但获取操作不必锁定,并且不支持以某种防止所有访问的方式锁定整个表。1 继承关系public class ConcurrentHashMap<...原创 2019-07-23 20:44:01 · 199 阅读 · 0 评论 -
Java集合系列---List源码解析(ArrayList和LinkedList的区别)
List源码主要讲ArrayList,LinkedList,Vector三个类1 ArrayListArrayList是一个底层基于数组的集合,首先来看一下它的继承关系,public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, C...原创 2019-07-16 20:42:53 · 140 阅读 · 0 评论 -
Java集合系列---HashMap源码解析(超详细)
1 HashMap1)特性:运行null键和null值,,非线程安全,不保证有序,插入和读取顺序不保证一致,不保证有序,在扩容时,元素的顺序会被重新打乱2)基本属性://默认初始化大小static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; // aka 16static final int MAXIMUM_CAPACITY =...原创 2019-07-17 19:21:18 · 182 阅读 · 0 评论 -
Java集合系列---TreeMap源码解析(巨好懂!!!)
TreeMap底层是基于红黑树实现,能实现根据key值对节点进行排序,排序可分为自然排序和定制排序。自然排序:TreeMap的所有key必须实现Comparable接口,定制排序:创建TreeMap的时候,传入一个Comparator对象,该对象负责对TreeMap的所有key进行排序,不需要key实现Comparable接口。1 基本属性和构造器//基本属性 //比较器 privat...原创 2019-07-21 14:33:18 · 238 阅读 · 0 评论 -
Java集合系列---LinkedHashMap源码解析
1 首先来看一下LinkedHashMap的继承关系public class LinkedHashMap<K,V> extends HashMap<K,V> implements Map<K,V>可以看出LinkedHashMap是继承了HashMap,它主要在链表的基础上增加了一个双向链表,重复的key值插入不会改变顺序,适用于使用者需要返回一个顺序相同...原创 2019-07-23 10:41:00 · 182 阅读 · 0 评论