Java HashMap原理及实例解析

 更新时间:2019年12月04日 09:25:28   作者:半米高峰  
这篇文章主要介绍了Java HashMap原理及实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

这篇文章主要介绍了Java HashMap原理及实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

示例 1 : HashMap的键值对

HashMap储存数据的方式是—— 键值对

package collection;
  
import java.util.HashMap;
  
public class TestCollection {
  public static void main(String[] args) {
    HashMap<String,String> dictionary = new HashMap<>();
    dictionary.put("adc", "物理英雄");
    dictionary.put("apc", "魔法英雄");
    dictionary.put("t", "坦克");
     
    System.out.println(dictionary.get("t"));
  }
}

示例 2 : 键不能重复,值可以重复

对于HashMap而言,key是唯一的,不可以重复的。

所以,以相同的key 把不同的value插入到 Map中会导致旧元素被覆盖,只留下最后插入的元素。

不过,同一个对象可以作为值插入到map中,只要对应的key不一样

package collection;
 
import java.util.HashMap;
 
import charactor.Hero;
 
public class TestCollection {
  public static void main(String[] args) {
    HashMap<String,Hero> heroMap = new HashMap<String,Hero>();
     
    heroMap.put("gareen", new Hero("gareen1"));
    System.out.println(heroMap);
     
    //key为gareen已经有value了,再以gareen作为key放入数据,会导致原英雄,被覆盖
    //不会增加新的元素到Map中
    heroMap.put("gareen", new Hero("gareen2"));
    System.out.println(heroMap);
     
    //清空map
    heroMap.clear();
    Hero gareen = new Hero("gareen");
     
    //同一个对象可以作为值插入到map中,只要对应的key不一样
    heroMap.put("hero1", gareen);
    heroMap.put("hero2", gareen);
     
    System.out.println(heroMap);
     
  }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Idea导入多个maven项目到同一目录下的方法示例

    Idea导入多个maven项目到同一目录下的方法示例

    这篇文章主要介绍了Idea导入多个maven项目到同一目录下,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • Java主流压缩解压工具对比、用法与选取详解

    Java主流压缩解压工具对比、用法与选取详解

    开发过程中可能会用到压缩文件的需求,下面这篇文章主要给大家介绍了关于Java主流压缩解压工具对比、用法与选取的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-01-01
  • 详解Java的readBytes是怎么实现的

    详解Java的readBytes是怎么实现的

    众所周知,Java是一门跨平台语言,针对不同的操作系统有不同的实现,下面小编就来从一个非常简单的api调用带大家来看看Java具体是怎么做的吧
    2023-07-07
  • Java并发编程线程间通讯实现过程详解

    Java并发编程线程间通讯实现过程详解

    这篇文章主要介绍了Java并发编程线程间通讯实现过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • java求数组元素重复次数和java字符串比较大小示例

    java求数组元素重复次数和java字符串比较大小示例

    这篇文章主要介绍了java求数组元素重复次数和java字符串比较大小示例,需要的朋友可以参考下
    2014-04-04
  • springmvc重定向实现方法解析

    springmvc重定向实现方法解析

    这篇文章主要介绍了springmvc重定向实现方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-01-01
  • 如何导入spring源码到IDEA

    如何导入spring源码到IDEA

    这篇文章主要介绍了如何导入spring源码到IDEA,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • springboot validator枚举值校验功能实现

    springboot validator枚举值校验功能实现

    这篇文章主要介绍了springboot validator枚举值校验功能实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-01-01
  • Java SpringBoot核心源码详解

    Java SpringBoot核心源码详解

    这篇文章主要为大家介绍了Java SpringBoot核心源码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2021-12-12
  • SpringBoot@DeleteMapping(/xxx/{id})请求报405的解决

    SpringBoot@DeleteMapping(/xxx/{id})请求报405的解决

    这篇文章主要介绍了SpringBoot@DeleteMapping(/xxx/{id})请求报405的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-01-01

最新评论