- 博客(5)
- 资源 (3)
- 收藏
- 关注
原创 LinkedHashMap源码分析
LinkedHashMap是使用HashMap+LinkedList来实现Map接口。和HashMap的区别在于它维持一个双端链表保存所插入访问的节点。链表定义了迭代顺序,默认情况下顺序就是键值插入到Map的顺序(插入顺序)。 构造方法为LinkedHashMap(int,float,boolean)的可用来创建一个按照访问顺序迭代的LinkedHashMap,按照最少访问到最多访问的顺序链接结点
2017-06-29 20:18:47 1617
原创 开篇
早在Kotlin还没有出正式版的时候就开始关注,本打算在研三找时间再学习的,奈何Kotlin发展迅速,并且Google I/O2017宣布Kotlin成为开发Android的第三种语言。作为一个Android开发者,也只有加快学习Kotlin的步伐了。从本篇博客开始将会陆续介绍Kotlin语言,本文会假设读者已具备一门语言的基础,比如说Java;本系列以官方文档为资料介绍Kotlin语言。 介绍K
2017-06-26 09:35:30 589
原创 深入理解阻塞队列(四)——LinkedBlockingDeque源码分析
LinkedBlockingDeque是一个基于链表的双端阻塞队列。和LinkedBlockingQueue类似,区别在于该类实现了Deque接口,而LinkedBlockingQueue实现了Queue接口。该类的继承关系如下图: 本文将与LinkedBlockingQueue进行比较,关于LinkedBlockingQueue可以参考:深入理解阻塞队列(三)——LinkedBlocki
2017-06-20 09:31:01 15122 2
原创 深入理解阻塞队列(三)——LinkedBlockingQueue源码分析
LinkedBlockingQueue是一个基于链表实现的可选容量的阻塞队列。队头的元素是插入时间最长的,队尾的元素是最新插入的。新的元素将会被插入到队列的尾部。 LinkedBlockingQueue的容量限制是可选的,如果在初始化时没有指定容量,那么默认使用int的最大值作为队列容量。 概述类继承关系LinkedBlockingQueue的继承关系如下图: 可以参考深入理解阻塞队列(二
2017-06-12 09:01:59 9950 1
原创 深入理解阻塞队列(二)——ArrayBlockingQueue源码分析
在深入理解阻塞队列(一)——基本结构中,介绍了BlockingQueue这一接口的子类以及子接口。本文主要就其中的一个实现类:ArrayBlockingQueue进行源码分析,分析阻塞队列的阻塞是如何实现的。 概述ArrayBlockingQueue底层是使用一个数组实现队列的,并且在构造ArrayBlockingQueue时需要指定容量,也就意味着底层数组一旦创建了,容量就不能改变了,因此Arr
2017-06-05 09:20:20 2991 7
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人