![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java容器及源码剖析
喵的波波鱼
爱生活,也爱技术!
展开
-
Java集合(21)——并发集合(9)——阻塞队列(2)——LinkedBlockingQueue源码分析——待完成
1.概述LinkedBlockingQueue:一个基于链表结构的阻塞队列,此队列按照FIFO(先进先出)排序元素,吞吐量通常要高于ArrayBlockingQueue2.使用案例3.源码分析...原创 2019-10-02 16:55:07 · 141 阅读 · 0 评论 -
Java集合(25)——并发集合(13)——阻塞队列(6)——DelayQueue源码分析
1原创 2019-10-03 07:55:01 · 112 阅读 · 0 评论 -
Java集合(20)——并发集合(8)——阻塞队列(1)——ArrayBlockingQueue源码分析
目录1.概述2.使用案例3.源码分析3.1 重要属性3.2 构造方法3.3 私有方法入队与出队(1)入队(2)出队3.4 put和take方法(1)put(2)take3.5 offer和poll(1)offer(2)poll3.6 peek3.7 remainingCapacity3.8 remove4.总结1.概述...原创 2019-10-02 16:54:26 · 177 阅读 · 0 评论 -
Java集合(7)——源码剖析(4)——HashMap源码分析
目录1.概述2.JDK1.7源码分析2.1 底层存储的对象2.2 成员变量2.3 构造函数2.4 添加键值对put2.5 从key到数组索引值的计算2.6 获取键值对get2.7扩容resize2.8 jdk1.7中HashMap多线程下扩容死锁演示与分析3.jdk1.8源码分析3.1 底层存储的对象3.2 成员变量3.3构造函数3....原创 2019-08-28 10:54:28 · 291 阅读 · 0 评论 -
Java集合(26)——并发集合(14)——阻塞队列(7)——LinkedBlockingDeque源码分析——国庆完成
1原创 2019-10-03 07:57:03 · 123 阅读 · 0 评论 -
Java集合(19)——并发集合(7)——阻塞队列(0)——阻塞队列的架构和方法剖析
目录1.什么是阻塞队列2.为什么要使用阻塞队列,有哪些好处?3.阻塞队列的架构和种类4.BlockingQueue的核心方法(1)抛出异常(2)特殊值(3)阻塞(4)超时1.什么是阻塞队列阻塞队列,顾名思义,首先它是一个队列 ,而一个阻塞队列在数据结构中所起的作用大致如图:线程1往阻塞队列中添加元素,而线程2从阻塞队列中移除元素 当阻塞队列为空时,...原创 2019-10-02 16:52:48 · 207 阅读 · 0 评论 -
Java集合(22)——并发集合(10)——阻塞队列(3)——SynchronousQueue源码分析——待完成
1.SynchronousQueue:一个不存储元素的阻塞队列,每个插入操作必须等到另一个线程调用移除操作,否则插入操作一直处于阻塞状态,吞吐量通常要高于...原创 2019-10-02 16:55:53 · 135 阅读 · 1 评论 -
Java集合(24)——并发集合(12)——阻塞队列(5)——PriorityBlockingQueue源码分析——待完成
1.原创 2019-10-02 16:57:58 · 104 阅读 · 0 评论 -
Java集合(23)——并发集合(11)——阻塞队列(4)——LinkedTransferQueue源码分析——待完成
1.概述原创 2019-10-02 16:57:44 · 92 阅读 · 0 评论 -
Java集合(1)——基础介绍(1)——集合框架、Collection接口、Iterator接口、泛型
目录1.集合的概述2.集合框架图3.Collection接口(1)常用方法(2)方法使用演示4.Iterator接口5.增强for循环6.泛型(1)什么是泛型(2)创建集合对象时使用和不使用泛型的对比(3)泛型的定义和使用1)泛型类的定义和使用2)含有泛型的方法定义和使用3)泛型接口的定义与使用(4)泛型通配符的使用1)通配符基本使用...原创 2019-05-16 13:11:45 · 258 阅读 · 0 评论 -
Java集合(2)——基础介绍(2)——与集合有关的数据结构、List接口、Set接口
目录1.与集合有关的几种数据结构(1)栈(2)队列(3)数组(4)链表(5)红黑树2.List接口3.List集合的实现类3.1 ArrayList集合(1)常用构造方法(2)常用方法(3)ArrayList存储基本数据类型(4)ArrayList的部分源码3.2 LinkedList集合3.3Vector集合4.Set接口及其实现...原创 2019-06-12 14:42:05 · 202 阅读 · 0 评论 -
Java集合(3)——基础介绍(3)——可变参数、Collections工具类、Map接口
目录1.可变参数2.Collections工具类3.Map接口3.1 Map接口的常用实现类3.2 Map接口的常用方法3.3 遍历Map集合的两种方式3.4HashMap存储自定义类型键值3.5 LinkedHashMap3.5 HashTable3.6 Map集合练习4.JDK9对集合添加的优化5.双列集合模拟斗地主洗牌发牌1.可变参数...原创 2019-06-12 21:57:01 · 306 阅读 · 0 评论 -
Java集合(4)——源码剖析(1)——ArrayList源码剖析
目录1.概述2.JDK1.7和JDK1.8的变化对比总结:3.源码详细剖析3.1 成员变量3.2初始化3.3添加元素与扩容机制(1)范围检查函数特别说明(2)System.arraycopy和Arrays.copyOf函数特别说明(3)扩容机制3.4 修改和获取元素3.5移除元素3.6序列化和反序列化3.7拷贝3.8迭代器的实...原创 2019-08-23 17:06:27 · 458 阅读 · 0 评论 -
Java集合(5)——源码剖析(2)——Vector源码剖析、Vector与ArrayList的对比——待完成
1.概述Vector是一个支持集合元素读写、且大小可变、且线程安全、最后还支持“随机访问”特性的List性质的集合。 它与ArrayList一样底层都是基于数组的,能进行动态扩容,是早期的线程安全的动态数组版本可以看它与ArrayLlist一样也继承于AbstractList,实现了List,RandomAccess,Cloneable,java.io.Serializable...原创 2019-08-23 17:08:43 · 130 阅读 · 0 评论 -
Java集合(13)——并发集合(1)——ArrayList、HashSet、HashMap线程不安全分析
目录1.ArrayList线程不安全分析1.1 故障现象1.2 导致原因分析1.3 解决方案(1)使用Vector(2)使用Collections.synchronizedList(List)(3)使用CopyOnWriteArrayList1.4 优化建议2.HashSet线程不安全分析2.1 故障分析2.2 解决方案(1)使用Collection...原创 2019-08-23 17:09:25 · 243 阅读 · 0 评论 -
Java集合(14)——并发集合(2)——CopyOnWriteArrayList源码剖析
1.概述CopyOnWrite容器即写时复制的容器,往一个容器中添加元素的时候,不直接往当前容器Object[]添加,而是先将当前容器Object[]进行Copy,复制出一个新的容器Object[] newElements,然后新的容器Object[] newElements里添加元素,添加完元素之后,再将原容器的引用指向新的容器setArray(newElements); 这样做的好处是可...原创 2019-08-23 17:11:05 · 131 阅读 · 0 评论 -
Java集合(6)——源码剖析(3)——LinkedList源码剖析
目录1.概述2.源码剖析2.1 节点类(LinkedList内部类)‘2.2 成员变量2.3 构造函数2.4 添加元素(1)从链表尾部添加元素(2)从链表头部添加元素(3)在指定节点的前后添加元素(4)将集合插入链表2.5 删除元素(1)从头部删除节点(2)从尾部删除元素(3)删除指定节点2.6节点查询2.7实现Queue接口和D...原创 2019-10-05 16:34:54 · 188 阅读 · 0 评论 -
Java集合(16)——并发集合(4)——CopyOnWriteArraySet源码剖析
1.CopyOnWriteArraySet原创 2019-10-02 16:43:57 · 100 阅读 · 0 评论 -
Java集合(17)——并发集合(5)——ConcurrentSkipListMap和ConcurrentSkipListSet源码剖析
1.原创 2019-10-02 16:44:16 · 122 阅读 · 0 评论 -
Java集合(18)——并发集合(6)——ConcurrentLinkedQueue源码分析
1.概述2.使用3.源码剖析原创 2019-10-02 16:48:20 · 110 阅读 · 0 评论 -
Java集合(15)——并发集合(3)——ConcurrentHashMap源码剖析
1.ConcurrentHashMap原创 2019-10-02 16:43:51 · 93 阅读 · 0 评论