最新 最热

揭秘Java中的瑞士军刀——HashMap源码解析

在编程的世界里,有一种神奇的工具,它小巧却强大,灵活而可靠,它是Java中最常用的数据结构之一,它就是HashMap。

2023-11-10
2

HashMap的默认初始长度是多少?为什么?

HashMap的默认初始长度是16,自动拓展和手动初始化时,长度必须是2的幂,即2^n (每次扩容都是以2的整数次幂扩容

2023-10-16
2

HashMap源码中的位运算符&

最近在读HashMap源码的时候,发现在很多运算符替代常规运算符的现象。比如说用hash & (table.length-1) 来替代取模运算hash&(table.length);用if((e.hash & oldCap) == 0)判断扩容后元素的位置等等。...

2023-10-16
2

JDK 7 HashMap 并发死链

注意 要在 JDK 7 下运行,JDK7以后否则扩容机制和 hash 的计算方法都变了

2023-10-15
3

【Java 基础篇】深入理解Java HashMap:使用注意事项和性能优化

Java是一种广泛使用的编程语言,而集合是Java编程中不可或缺的一部分。在Java的集合框架中,HashMap是一个常用的数据结构,用于存储键值对。本文将深入介绍HashMap集合,从基础到高级用法,帮助您更好地理解和利用它。...

2023-10-12
2

【Rust 基础篇】Rust HashMap 类型详解

在 Rust 中,HashMap 是一种键值对存储的集合类型,它提供了高效的插入、查找和删除操作。HashMap 是基于哈希表实现的,能够以常数时间复杂度(O(1))进行操作,因此在处理大量数据时非常高效。本篇博客将详细介绍 Rust 中的 Has...

2023-10-12
3

深入解析JDK 8 HashMap

HashMap 主要用来存放键值对,它基于哈希表的 Map 接口实现,是常用的 Java 集合之一,是非线程安全的。

2023-10-11
3

有效的字母异位词

输入: s = "anagram", t = "nagaram"输出: true

2023-09-24
2

LinkedHashMap实现LRU - 附重点源码解析

最近接触LRU(Least Recently Used),即最近最少使用,也称淘汰算法,在JDK中LinkedHashMap有相关实现,下面针对LRU及LinkedHashMap的LRU实现进行详细讲解

2023-09-24
2

HashMap详解

**Hash,一般翻译做“散列”,也有直接音译为“哈希”的,就是把任意长度的输入,通过散列算法,变换成固定长度的输出,该输出就是散列值。**这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列...

2023-08-25
2