原文:JDK1.8源码(七)——java.util.HashMap 类

本篇博客我们来介绍在 JDK . 中 HashMap 的源码实现,这也是最常用的一个集合。但是在介绍 HashMap 之前,我们先介绍什么是 Hash表。 哈希表 Hash表也称为散列表,也有直接译作哈希表,Hash表是一种根据关键字值 key value 而直接进行访问的数据结构。也就是说它通过把关键码值映射到表中的一个位置来访问记录,以此来加快查找的速度。在链表 数组等数据结构中,查找某个关 ...

2018-04-12 22:49 19 14882 推荐指数:

查看详情

JDK1.8源码(三)——java.util.HashMap

什么是哈希表? 在讨论哈希表之前,我们先大概了解下其他数据结构在新增,查找等基础操作执行性能   数组:采用一段连续的存储单元来存储数据。对于指 ...

Sat Sep 29 00:26:00 CST 2018 1 719
java.util.HashMapjava.util.HashTable (JDK1.8)

一、java.util.HashMap 1.1 java.util.HashMap 综述 java.util.HashMap继承结构如下图 HashMap是非线程安全的,key和value都支持null HashMap的节点是链表,节点的equals比较的是节点的key和value内容 ...

Wed Dec 06 04:36:00 CST 2017 0 1884
JDK1.8源码(九)——java.util.LinkedHashMap

  前面我们介绍了 Map 集合的一种典型实现 HashMap ,关于 HashMap 的特性,我们再来复习一遍:   ①、基于JDK1.8HashMap是由数组+链表+红黑树组成,相对于早期版本的 JDK HashMap 实现,新增了红黑树作为底层数据结构,在数据量较大且哈希碰撞较多 ...

Wed Nov 21 16:51:00 CST 2018 8 3851
JDK1.8源码(四)——java.util.Arrays

  java.util.Arrays JDK 提供的一个工具,用来处理数组的各种方法,而且每个方法基本上都是静态方法,能直接通过名Arrays调用。 1、asList   作用是返回由指定数组支持的固定大小列表。   注意:这个方法返回的 ArrayList ...

Mon Mar 26 15:21:00 CST 2018 2 10905
JDK1.8源码(六)——java.util.LinkedList

  上一篇博客我们介绍了List集合的一种典型实现 ArrayList,我们知道 ArrayList 是由数组构成的,本篇博客我们介绍 List 集合的另一种典型实现 LinkedList,这是一个由 ...

Mon Apr 02 17:44:00 CST 2018 4 9892
JDK1.8源码(六)——java.util.ArrayList

一、概述 1、介绍   ArrayList元素是有序的,可重复。线程不安全的。底层维护一个 Object 数组。  JDK1.7:ArrayList像饿汉式,默认初始长度直接创建一个容量为 10 的数组。  JDK1.8:ArrayList像懒汉式,默认一开始创建一个长度为 0 的数组,当添加 ...

Tue Sep 28 17:50:00 CST 2021 0 341
JDK1.8源码(十)——java.util.LinkedHashSet

  同 HashSet 与 HashMap 的关系一样,本篇博客所介绍的 LinkedHashSet 和 LinkedHashMap 也是一致的。在 JDK 集合框架中,类似 Set 集合通常都是由对应的 Map 集合来实现的(TreeSet 和 TreeMap 同理),这里很重要的一个理论 ...

Sat Nov 24 17:23:00 CST 2018 0 1559
JDK1.8源码(八)——java.util.HashSet

  在上一篇博客,我们介绍了 Map 集合的一种典型实现 HashMap ,在 JDK1.8 中,HashMap 是由 数组+链表+红黑树构成,相对于早期版本的 JDK HashMap 实现,新增了红黑树作为底层数据结构,在数据量较大且哈希碰撞较多时,能够极大的增加检索的效率。了解 ...

Thu Oct 25 04:07:00 CST 2018 1 6183
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM