Jdk1.6 集合框架源码解析汇总
- 非并发:
Jdk1.6 Collections Framework源码解析(1)-ArrayList
描述:动态扩容的数组。
Jdk1.6 Collections Framework源码解析(2)-LinkedList
描述:双向链表。
Jdk1.6 Collections Framework源码解析(3)-ArrayDeque
描述:动态扩容的数组 + 头尾指针。
Jdk1.6 Collections Framework源码解析(4)-HashMap
描述:哈希表,链表法解决哈希冲突。
Jdk1.6 Collections Framework源码解析(5)-LinkedHashMap
描述:哈希表,链表法解决哈希冲突,外加一个双向链表串起所有Entry。
Jdk1.6 Collections Framework源码解析(6)-IdentityHashMap
描述:哈希表,探测法解决哈希冲突。
Jdk1.6 Collections Framework源码解析(7)-HashSet和LinkedHashSet
描述:内部就是HashMap和LinkedHashMap。
Jdk1.6 Collections Framework源码解析(8)-WeakHashMap
描述:HashMap + WeakReference Key
Jdk1.6 Collections Framework源码解析(9)-PriorityQueue
描述:二叉堆
Jdk1.6 Collections Framework源码解析(10)-EnumMap
描述:Key数组 + Value数组
Jdk1.6 Collections Framework源码解析(11)-EnumSet
描述:位域
Jdk1.6 Collections Framework源码解析(12)-TreeMap、TreeSet
描述:红黑树
- 并发:
Jdk1.6 JUC源码解析(12)-ArrayBlockingQueue
描述:数组 + Lock
Jdk1.6 JUC源码解析(13)-LinkedBlockingQueue
描述:单向链表 + 双Lock
Jdk1.6 JUC源码解析(14)-PriorityBlockingQueue
描述:二叉堆 + 锁
Jdk1.6 JUC源码解析(15)-SynchronousQueue
描述:伪栈、伪队列
Jdk1.6 JUC源码解析(18)-DelayQueue
描述:二叉堆 + 锁
Jdk1.6 JUC源码解析(22)-LinkedBlockingDeque
描述:双向链表 + 锁
Jdk1.6 JUC源码解析(23)-CopyOnWriteArrayList、CopyOnWriteArraySet
描述:数组 + 锁
Jdk1.6 JUC源码解析(24)-ConcurrentLinkedQueue
描述:单向链表 + CAS
Jdk1.6 JUC源码解析(25)-ConcurrentHashMap
描述:带锁的哈希表数组
Jdk1.6 JUC源码解析(26)-ConcurrentSkipListMap、ConcurrentSkipListSet
描述:跳表 + CAS
- 工具:
Jdk1.6 Collections Framework源码解析(13)-Arrays 待补充
Jdk1.6 Collections Framework源码解析(14)-Collections 待补充