努力奔跑中的coder

源代码的github地址:https://github.com/louyuting

PriorityQueue 原理与应用

深入理解 PriorityQueue 优先队列最近在使用DelayQueue时候,发现其底层是基于PriorityQueue实现的,接着这个机会深入分析一下优先队列的实现原理,方便以后在最适合的地方应用。 本文主要的结构分为以下几点: 1)PriorityQueue的类继承关系 2...

2017-11-13 16:29:13

阅读数:369

评论数:0

《Java源码解析》TreeMap

红黑树顾名思义就是节点是红色或者黑色的平衡二叉树,它通过颜色的约束来维持着二叉树的平衡。对于一棵有效的红黑树二叉树而言我们必须增加如下规则: 1、每个节点都只能是红色或者黑色 2、根节点是黑色 3、每个叶节点(NIL节点,空节点)是黑色的。 4、如果一个结点是红的,则它两个子节点都是黑的。...

2017-01-09 19:06:15

阅读数:246

评论数:0

J.U.C--并发容器类之ConcurrentHashMap

JDK5 提供了多种并发容器类来改进同步容器类的性能。同步容器类将所有对容器的访问操作全部串行化了来实现线程安全,这种方式的代价是严重降低的并发性。当多个线程竞争容器锁时,吞吐量严重降低。 并发容器类的设计是专门针对多线程并发访问设计的。JDK5中新增了ConcurrentHashMap...

2017-01-07 12:53:57

阅读数:293

评论数:0

J.U.C--同步容器类Collections

在JDK1.2之前同步容器类包括Vector、HashTable,这两个容器通过内置锁synchronized保证了同步。后面的ArrayList、LinkedList、HashMap、LinkedHashMap等等都不是线程安全的,没有添加同步机制。但是JDK后面的Collections类也提供...

2017-01-07 12:07:37

阅读数:322

评论数:0

为什么千万别用for循环迭代LinkedList

今天晚上7点时候,想着每天的8点健身还早,突然想起来以前的一个知识点说千万别用for循环迭代LinkedList,效率奇低,今天就想着来写个测试例子并分析原理: 代码测试与现象哈哈哈,首先还是先上源码:package collection;import java.util.ArrayList; i...

2017-01-06 23:31:51

阅读数:3759

评论数:0

《Java源码解析》集合框架Set之LinkedHashSet

《Java源码分析》:LinkedHashSet上篇博文对HashSet的源码进行了分析,这篇博文就是对LinkedHashSet进行一个分析。HashSet是借助于HashMap来进行实现的,而LinkedHashSet是基于LinkedHashMap进行实现的。LinkedHashSet的继承...

2016-12-25 13:00:28

阅读数:233

评论数:0

《Java源码解析》集合框架Set之HashSet

《Java源码分析》:HashSet前面几篇把Map、List相关的的几个类看了下,当然Set接口相关的类也相当的重要,我们也用的比较多,因此,我们也需要了解下Set接口的两个实现类HashSet、TreeSet的源码。这篇博文是记录HashSet的源码分析。下篇博文就来记录TreeSet的源码分...

2016-12-25 12:56:19

阅读数:285

评论数:0

《Java源码解析》集合框架Map之LinkedHashMap

2016-12-24 16:01 以前都没有贴出来运行环境,今天加上OS和JDK版本,因为发现不同版本实现源码有些许差别: OS : MacOS 10.11 JDK: jdk1.7-72 LinkedHashMap1. 还是先看看LinkedHashMap类继承结构图首先说说...

2016-12-24 15:21:18

阅读数:337

评论数:0

《Java源码解析》集合框架Map之HashTable

时间:2016-12-24 11:01 >今天是2017届研究生入学考试第一天,虽然已经与我没什么关系,但还是会想去去年入学考试的今天,往事已随风逝去,具体的2016生活与技术的总结还是写一个专门的博客吧。难得的周六,难得的早起,陪着2017的考生一起吧,所以也早起写了一片博客,时间也差...

2016-12-24 11:01:42

阅读数:325

评论数:0

《Java源码解析》集合框架Map之HashMap

前面的几篇博客分析了List的两种实现ArrayList和LinkedList实现的源码,接下来就是分析Map的几个实现,下面首先分析Map的实现之一 HashMapHashMap还是老规矩,先看HashMap的继承体系:1. HashMap的继承体系HashMap主要是继承自Abstra...

2016-12-23 14:05:47

阅读数:368

评论数:0

Java的ArrayList和LinkedList的对比

LinkedList和ArrayList的对比老生常谈的问题了,顺便在这里就把LinkedList的优缺点也给讲了。 1. 顺序插入速度ArrayList会比较快,因为ArrayList是基于数组实现的,数组是事先new好的,只要往指定位置塞一个数据就好了;LinkedList则不同,每次顺序插...

2016-12-22 15:16:03

阅读数:891

评论数:0

《Java源码解析》集合框架List之LinkedList

LinkedList1.首先看看 LinkedList 的继承体系的结构LinkedList主要是继承自AbstractSequentialList抽象类并实现了List接口、实现了Cloneable和Serializable接口使得ArrayList具有克隆和序列化的功能、实现了Deque接口和...

2016-12-21 19:37:49

阅读数:366

评论数:0

《Java源码解析》集合框架List之ArrayList

Java的集合框架的底层实现在面试中用的比较多,接下来我就用一些时间来分析一下Java的集合框架中的List(ArrayList,LinkedList),Set(Set的各种实现类),Map(Hashtable、HashMap、ConcurrentHashMap) 对于集合框架我们的关注点一般在...

2016-12-20 09:47:58

阅读数:706

评论数:1

提示
确定要删除当前文章?
取消 删除
关闭
关闭