Map集合练习
Posted wurengen
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Map集合练习相关的知识,希望对你有一定的参考价值。
需求:
计算一个字符串中每个字符出现次数。
分析:
- 获取一个字符串对象
- 创建一个Map集合,键代表字符,值代表次数。
- 遍历字符串得到每个字符。
- 判断Map中是否有该键。
- 如果没有,第一次出现,存储次数为1;如果有,则说明已经出现过,获取到对应的值进行++,再次存储。
- 打印最终结果
import java.util.HashMap; import java.util.Scanner; public class Demo07 { public static void main(String[] args) { //友情提示 System.out.println("请录入一个字符串:"); String line = new Scanner(System.in).nextLine(); // 定义 每个字符出现次数的方法 findChar(line); } private static void findChar(String line) { //1:创建一个集合 存储 字符 以及其出现的次数 HashMap<Character, Integer> map = new HashMap<Character, Integer>(); //2:遍历字符串 for (int i = 0; i < line.length(); i++) { char c = line.charAt(i); //判断 该字符 是否在键集中 if (!map.containsKey(c)) {//说明这个字符没有出现过 //那就是第一次 map.put(c, 1); } else { //先获取之前的次数 Integer count = map.get(c); //count++; //再次存入 更新 map.put(c, ++count); } } System.out.println(map); } }
执行结果
请录入一个字符串:
1231321235asedaewaeawfwe3rdfs
{1=3, a=4, 2=3, r=1, 3=4, s=2, d=2, 5=1, e=4, f=2, w=3}
以上是关于Map集合练习的主要内容,如果未能解决你的问题,请参考以下文章