标签:HashMap

JAVA

HashMap 在JDK1.8与JDK1.7的性能测试对比

herman 3个月前 (11-20) 237浏览

任何数据结构的产生总对应着要解决一个实际的问题!我在《HashMap 存在的意义是什么?》这篇文章中总结到:HashMap 这种数据结构解决存取一组 key-vaule 键值对数据,并且在插入、删除、遍历都有不错性能的数据结构。我们也知道,JDK...

JAVA

从 HashMap 的扩容机制来说它为什么不是线程安全的!

herman 3个月前 (11-20) 160浏览

我在前面的文章《Java 线程安全的3大核心:原子性、可见性、有序性》中已经说到了什么是线程安全!根据这篇文章,我们对照着 HashMap 来说说它为什么不是线程安全的? 前面我也强调过多次,回答是不是线程安全的请从:原子性、可见性、有序性...

JAVA

HashMap 存在的意义是什么?

herman 3个月前 (11-20) 259浏览

我一直在思考一个问题:HashMap 存在的意义是什么?也就是说 Java 为什么要设计 HashMap?我问了很多面试者以及很多 CSDN 的博客专家都没有找到想要的答案!于是我自己查了很多资料想找 HashMap 为什么需要这样设计?最终都没...

JAVA

HashMap 的实现原理

herman 8个月前 (06-17) 647浏览 0评论

众所周知,HashMap是用来存储Key-Value键值对的一种集合,这个键值对也叫做Entry,而每个Entry都是存储在数组当中,因此这个数组就是HashMap的主干。 HashMap数组中的每一个元素的初始值都是NULL  ...

JAVA

Java HashMap 的死循环(HashMap Infinite Loop)

herman 8个月前 (06-17) 357浏览 0评论

在淘宝内网里看到同事发了贴说了一个CPU被100%的线上故障,并且这个事发生了很多次,原因是在Java语言在并发情况下使用HashMap造成Race Condition,从而导致死循环。这个事情我4、5年前也经历过,本来觉得没什么好写的,因为Ja...

JAVA

详解 Java 中的 Iterable、Itetator、Enumeration

herman 10个月前 (05-01) 946浏览 0评论

Java 中对一些集合循环遍历做了一些特殊的封装。一些是方便我们的操作,一些是存在存储性能等方面设计的。关于 Iterable、Itetator、Enumeration,我们一起来学习它们。 Iterable Iterable接口实现...

业余杂谈

区块链 Hash 的不可修改性

herman 1年前 (2017-12-30) 745浏览 0评论

本文主要讲区块链 Hash 的不可修改性以及区块链名字的由来。 区块与 Hash 是一一对应的,每个区块的 Hash 都是针对"区块头"(Head)计算的。 Hash = SHA256(区块头) 上面...

JAVA

java ConcurrentHashMap 教程

xmt_herman_gcy 2年前 (2017-07-06) 593浏览 0评论

ConcurrentHashMap具体是怎么实现线程安全的呢,肯定不可能是每个方法加synchronized,那样就变成了HashTable。 集合是编程中最常用的数据结构。而谈到并发,几乎总是离不开集合这类高级数据结构的支持。比如两个线程...