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); }
}

最新文章

  1. 前端设计中关于外部js文件加载的速度优化
  2. 使用swfupload上传超过30M文件,使用FLASH上传组件
  3. mysql 操作突然断网,MySQL: “lock wait timeout exceeded”
  4. 3D视觉差---原生js+css
  5. bzoj 2706: [SDOI2012]棋盘覆盖 Dancing Link
  6. 网页端启动WinForm
  7. BI商业智能项目中的若干风险要素
  8. Markdown规则
  9. C++语言中的类型(二)
  10. obj-c编程03:多个参数方法的定义
  11. 修改linux下yum镜像源为国内镜像
  12. layoutSubviews 在什么情况下会被触发
  13. sublime unityshaderplugin
  14. TextBlock 重写,当文本过长时,自动截断文本并出现Tooltip
  15. PAT 甲级 1137 Final Grading
  16. 转:Tkinter教程之Text(2)篇
  17. Java——基本语法
  18. SAP ECC6安装系列三:关于SAP,你也许想知道的一些事
  19. InfluxDB命令使用
  20. mysqldump test

热门文章

  1. 【微信小程序】安装EsayWechat简化微信小程序的开发
  2. TypeScript 学习笔记(三)
  3. python if语法
  4. MySQL 部署分布式架构 MyCAT (三)
  5. 渗透测试学习 二十二、getshell总结
  6. Ubuntu安装DaVinci Resolve
  7. Linux文件基本命令
  8. python使用face_recognition包的环境设置
  9. ISODATA聚类算法的matlab程序
  10. 【poj3207】Ikki&#39;s Story IV - Panda&#39;s Trick(2-sat)