HashMap简介

HashMap是一种非常常见、方便和有用的集合,是一种键值对(K-V)形式的存储结构

常见的方法如下:

  • put:将数据添加到集合中
  • get:获取集合中的元素
  • size:获取集合的长度
  • remove:移除集合中的键值对
  • containsKey:判断指定的key是否存在

实战演练

1.HashMap的用法案例

package cn.test.logan.day06;

import java.util.HashMap;

public class HashMapDemo {
public static void main(String[] args) {
// 构建一个hashmap对象
HashMap<String,String> map1 = new HashMap<>(); // 添加元素
map1.put("1", "Jack");
map1.put("2", "Logan");
map1.put("3", "Tom");
map1.put("4", "Alice"); // 获取元素
String a = map1.get("2");
System.out.println(a); // 获取长度
int size = map1.size();
System.out.println(size); // 从map1中移除元素
String b = map1.remove("3");
System.out.println(b); // 判断数据是否存在
boolean c = map1.containsKey("3");
System.out.println(c);
}
}

HashMapDemo.java

2.使用HashMap计算字符串中每个单词的数量

package cn.test.logan.day06;

import java.util.HashMap;
import java.util.Set; public class HashMapWordCount {
public static void main(String[] args) {
String str = "a,c,v,b,s,d,a,b,s,f,s";
String[] arr = str.split(","); HashMap<String,Integer> countMap = new HashMap<>(); /**
* 将数组中的元素依次装入到HashMap中,
* 如果已经存在HashMap中,那么在数量字段上加1
* 如果不存在,那么将字符存入,计数为1
*/
for(String word:arr) {
if(countMap.containsKey(word)) {
Integer value = countMap.get(word);
countMap.put(word, value+1);
}else {
countMap.put(word, 1);
}
}
/**
* 遍历HashMap,打印数据
*/
// 先取出所有的key
Set<String> keyset = countMap.keySet();
// 根据key,取出value
for(String key:keyset) {
Integer count = countMap.get(key);
System.out.println("字符"+key+",数量为:"+count);
}
}
}

HashMapWordCount.java

最新文章

  1. NSSearchPathForDirectoriesInDomains函数详解
  2. 例如筋斗云的效果,但不通过offset定位的flag标记
  3. CI-持续集成(1)-软件工业“流水线”概述
  4. ArcGIS发布服务时缓存切片设置
  5. STM3210x建工程库函数版本
  6. Spring自动装配与扫描注解
  7. 微信公众号开发中遇到的几个bug
  8. 谈谈CSS的布局,display、position、float
  9. Node.js 学习(六)Node.js EventEmitter
  10. lintcode : 空格替换
  11. 平时的笔记02:处理fnmatch模块
  12. ASP.NET 会话状态的模式
  13. 小米1S iptables禁止443端口
  14. 3、J2EE学习推荐书籍
  15. 基于Vue2 搭建移动端 webapp 框架
  16. [Luogu P1354]房间最短路问题
  17. Java静态数据的初始化
  18. oracle SQL 执行进度
  19. Notes of Daily Scrum Meeting(12.25)
  20. Postfix 邮件服务 - 邮箱组件 cyrus-sasl

热门文章

  1. CAS5单点登录
  2. Java解压和压缩带密码的zip或rar文件(下载压缩文件中的选中文件、向压缩文件中新增、删除文件)
  3. Arguments 对象、call()与apply()
  4. Python学习笔记之使用 python -m SimpleHTTPServer 快速搭建http服务
  5. 2019-11-29-C#-字典-Dictionary-的-TryGetValue-与先判断-ContainsKey-然后-Get-的性能对比
  6. 2019-11-29-WPF-高性能笔
  7. 今天是JAVA诞生日
  8. 浅谈Nginx以及特性
  9. 用SWFUpload上传图片小例子
  10. uni-app通过判断接口403跳转登录页面的问题