`

java HashMap存值巧遇,key不同但是却覆盖了之前的值

阅读更多

情况是这样的

一个空的HashMap testHM;

testHM.put("a","123");

testHM.put("b","456");

testHM.put("a.c","789");

 

取testHM的size是3,正确。

取里面的值,只剩下两个"b","456"  和"a.c","789"

这时候再取testHM.get("a");已经取不到了。

 

后来发现,是因为testHM.put("a.c","789");把之前的 a 的key给覆盖了。

 

testHM.put("a.c","789"); 改为testHM.put("a_c","789");就好了。

 

这是什么情况?

 

天真

 

 

 

 

分享到:
评论

相关推荐

    Java HashMap类详解

    HashMap 和 HashSet 是 Java Collection Framework 的两个重要成员,虽然它们实现的接口规范不同,但它们底层的 Hash 存储机制完全一样。甚至 HashSet 本身就采用 HashMap 来实现的。 2. Hash 存储机制 HashMap ...

    java HashMap原理分析

    HashMap是一种高效的数据结构,它可以快速根据Key找到元素,但是需要正确地实现hashCode和equals方法,以避免哈希碰撞问题和equals方法的调用问题。 知识点: 1. 哈希函数的原理和应用 2. HashMap的存储原理和查询...

    Java中HashMap的工作机制

    在详细探讨Java中HashMap的工作机制之前,首先需要理解哈希的概念。 哈希是将任意长度的输入(通常是字符串)通过散列算法变换成固定长度的输出,该输出即代表了该输入值的哈希码。在Java中,所有的对象都继承自...

    js 版 java hashmap

    JavaScript中的HashMap并不是内置的数据结构,但在许多开发场景中,我们需要实现类似Java中HashMap的功能,用于存储键值对数据。在JavaScript中,我们通常使用对象(Object)来模拟HashMap的行为,因为对象的属性名...

    简单的key value hashmap

    哈希映射(HashMap)是Java编程语言中一个非常重要的数据结构,它在《简单的key value hashmap》中被提及,通常用于存储键值对(key-value pairs)。HashMap是Java集合框架的一部分,它提供了高效的查找、插入和删除...

    Java-HashMap.rar_hashmap_java hashmap

    在Java编程语言中,`HashMap`是`java.util`包中的一个核心类,它属于集合框架的一部分,主要用于存储键值对的数据结构。`HashMap`基于哈希表(散列表)实现,提供了快速的插入、删除和查找操作,平均时间复杂度为O(1...

    java中HashMap详解.pdf

    Java中的HashMap是一种基于散列机制的Map接口的实现,它允许我们存储键值对。键是唯一的,而值可以重复。HashMap在处理数据时非常高效,因为其操作的时间复杂度接近于O(1)。这是通过使用散列函数将键映射到相应的...

    HashMap通过VALUE反向求KEY的方法

    在Java编程中,HashMap是一种常用的集合类,它用于存储键值对(KEY-VALUE)的数据结构。HashMap允许我们在常量时间内快速访问数据,基于哈希表的原理实现。当我们需要根据键来查找值时,HashMap提供了高效的方式。...

    JAVA hashmap 负载因子为什么是0.75,官方解释

    java hashmap 扩容因子为什么是0.75,官方给出的解释

    Java SE程序 HashMap类

    Java SE程序 HashMap类Java SE程序 HashMap类Java SE程序 HashMap类Java SE程序 HashMap类Java SE程序 HashMap类Java SE程序 HashMap类Java SE程序 HashMap类Java SE程序 HashMap类Java SE程序 HashMap类Java SE程序...

    自定义map实现java的hashmap

    - 键(Key):HashMap中的每个元素由一个键和一个值组成,键是唯一的,不允许重复。 - 值(Value):键对应的值,可以重复。 - 哈希码(Hash Code):键对象通过hashCode()方法计算得到的整数值,用于定位元素在...

    Java HashMap高难度面试题集锦解析Java HashMap面试题及答案解析-高难度

    Java HashMap 是一个非常重要的数据结构,它在面试中经常被问到,因为它涉及到许多底层实现细节和并发问题。以下是对给定的Java HashMap面试题的详细解析: 1. **HashMap的内部实现原理**: HashMap基于哈希表,...

    HashMap根据value获取key值

    Map集合的特性:一个key值对应一个value值,key值保持着唯一性,而插入的键值对相同key值会发生覆盖原key值对应的value值。 Map集合中一个key对应一个value,但是一个相同的value值可以对应多个key值 下面我们来根据...

    疫苗:Java HashMap的死循环

    如果两个不同的key具有相同的hash值,HashMap就会将它们链式存储在同一个数组索引中。 在多线程环境中,HashMap的put操作可能会导致死循环的问题。这是因为HashMap的resize操作可能会导致所有线程挂起,从而引发死...

    java 使用web service读取HashMap里的数值

    ### Java使用WebService读取HashMap里的数值 #### 背景介绍 在Java开发中,`WebService`是一种常用的技术栈,用于实现不同系统间的通信。它允许应用程序之间通过标准的HTTP协议进行数据交换与方法调用,这对于...

    java程序-HashMap排序

    先根据value的值从小到大排序,value相同再根据key的字母顺序来排序

    java hashmap 深度剖析,和hashmap 相关面试题

    java hashmap 深度剖析,和hashmap 相关面试题

    Map与HashMap

    《java编程思想》,Map结合HashMap获取键相关联的值

    Java中HashMap详解(通俗易懂).doc

    HashMap基于哈希表(也称为散列表)原理工作,它允许用户通过键(Key)快速查找对应的值(Value)。在HashMap中,键和值可以是任何类型的对象,只要它们实现了equals()和hashCode()方法,这两个方法用于确定对象的...

Global site tag (gtag.js) - Google Analytics