随笔分类 -  集合

深入浅出ConcurrentHashMap1.8
摘要:转载:https://www.jianshu.com/p/c0642afe03e0 好文 关于文章中的疑问:为什么要构造一个反序链表,放在nextTable的i+n的位置上呢,在《深入分析ConcurrentHashMap1.8的扩容实现 》一文中进行了详细分析。 注意:ConcurrentHash 阅读全文

posted @ 2018-06-09 17:24 夜的第八章 阅读(1448) 评论(0) 推荐(0)

ConcurrentHashMap JDK1.8
摘要:转载:https://blog.csdn.net/u010412719/article/details/52145145 注意:ConcurrentHashMap中的get方法中,没有进行同步,理由可能如下: 代码中会先执行 e = tabAt(tab, (n - 1) & h)),该方法是通过CA 阅读全文

posted @ 2018-06-07 21:29 夜的第八章 阅读(268) 评论(0) 推荐(0)

Java多线程系列--CopyOnWriteArraySet
摘要:转载:http://www.cnblogs.com/skywang12345/p/3498497.html 概要 本章是JUC系列中的CopyOnWriteArraySet篇。接下来,会先对CopyOnWriteArraySet进行基本介绍,然后再说明它的原理,接着通过代码去分析,最后通过示例更进一 阅读全文

posted @ 2018-06-05 21:32 夜的第八章 阅读(21905) 评论(0) 推荐(2)

Java多线程系列--“JUC集合”02之 CopyOnWriteArrayList
摘要:转载:http://www.cnblogs.com/skywang12345/p/3498483.html 概要 本章是"JUC系列"的CopyOnWriteArrayList篇。接下来,会先对CopyOnWriteArrayList进行基本介绍,然后再说明它的原理,接着通过代码去分析,最后通过示例 阅读全文

posted @ 2018-06-03 21:18 夜的第八章 阅读(541) 评论(0) 推荐(0)

HashMap和Hashtable的比较
摘要:相同点 HashMap和Hashtable都是存储“键值对(key-value)”的散列表,而且都是采用拉链法解决hash冲突的。但是1.8中,hashmap引入了红黑树。Hashtable没有引入红黑树 不同点 1.线程安全性。 hashmap线程不安全,hashtable是线程安全的,底层对方法 阅读全文

posted @ 2018-05-23 21:29 夜的第八章 阅读(233) 评论(0) 推荐(0)

linkedHashMap源码解析(JDK1.8)
摘要:引言 关于java中的不常见模块,让我一下子想我也想不出来,所以我希望以后每次遇到的时候我就加一篇。上次有人建议我写全所有常用的Map,所以我研究了一晚上LinkedHashMap,把自己感悟到的解释给大家。在本篇博文中,我会用一个例子展现LinkedHashMap的运行和初始化情况,展示Linke 阅读全文

posted @ 2018-05-23 20:46 夜的第八章 阅读(316) 评论(0) 推荐(0)

Vector 、ArrayList、LinkedList比较
摘要:这三者都可以随机访问,也就是支持通过索引查找数据。 都是有序(可以实现元素怎么进怎么出) Vector和ArrayList比较 相同之处 1 它们都是List 它们都继承于AbstractList,并且实现List接口。 3 它们都是通过数组实现的,本质上都是动态数组 4 它们的默认数组容量是10 阅读全文

posted @ 2018-05-22 15:58 夜的第八章 阅读(137) 评论(0) 推荐(0)

LinkedList源码解析(jdk1.8)
摘要:概要 前面,我们已经学习了ArrayList,并了解了fail-fast机制。这一章我们接着学习List的实现类——LinkedList。和学习ArrayList一样,接下来呢,我们先对LinkedList有个整体认识,然后再学习它的源码;最后再通过实例来学会使用LinkedList。内容包括:第1 阅读全文

posted @ 2018-05-20 16:03 夜的第八章 阅读(271) 评论(0) 推荐(0)

ArrayList源码解读(jdk1.8)
摘要:概要 上一章,我们学习了Collection的架构。这一章开始,我们对Collection的具体实现类进行讲解;首先,讲解List,而List中ArrayList又最为常用。因此,本章我们讲解ArrayList。先对ArrayList有个整体认识,再学习它的源码,最后再通过例子来学习如何使用它。内容 阅读全文

posted @ 2018-05-20 15:07 夜的第八章 阅读(333) 评论(0) 推荐(0)

ConcurrentHashMap源码阅读
摘要:转载:http://www.cnblogs.com/butterfly100/p/8019491.html 1. 前言 HashMap是非线程安全的,在多线程访问时没有同步机制,并发场景下put操作可能导致同一数组下的链表形成闭环,get时候出现死循环,导致CPU利用率接近100%。 HashTab 阅读全文

posted @ 2017-12-11 09:17 夜的第八章 阅读(236) 评论(0) 推荐(0)

HashMap实现原理及源码分析(JDK1.7)
摘要:转载:https://www.cnblogs.com/chengxiao/p/6059914.html 哈希表(hash table)也叫散列表,是一种非常重要的数据结构,应用场景及其丰富,许多缓存技术(比如memcached)的核心其实就是在内存中维护一张大的哈希表,而HashMap的实现原理也常 阅读全文

posted @ 2017-12-06 16:41 夜的第八章 阅读(3621) 评论(0) 推荐(0)

Java中HashMap底层实现原理(JDK1.8)源码分析
摘要:在JDK1.6,JDK1.7中,HashMap采用位桶+链表实现。每个桶对应不同的hash值,根据key计算得到的hash值,将键值对存放到对应位置。但是,很可能出现不同的key,计算出的hash值相同,这时就会造成哈希冲突。hashmap使用链表处理冲突,同一hash值的键值对存放在同一个桶中,并 阅读全文

posted @ 2017-12-06 16:32 夜的第八章 阅读(1065) 评论(0) 推荐(0)

Java 集合系列目录(Category)
摘要:转载:http://www.cnblogs.com/skywang12345/p/3323085.html 下面是最近总结的Java集合(JDK1.6.0_45)相关文章的目录。 01. Java 集合系列01之 总体框架 02. Java 集合系列02之 Collection架构 03. Arra 阅读全文

posted @ 2017-12-06 09:13 夜的第八章 阅读(228) 评论(0) 推荐(0)

导航