您的位置:首页 > 编程语言 > Java开发

[置顶] java集合框架的练习之HashMap集合的运用

2017-11-08 11:25 555 查看
 要求:

  统计字符串中每个字符出现的次数

 

 分析:

  1.定义一个需要被统计字符的字符串

  2.将字符串转换成字符数组

  3.定义双列集合,用来存储字符串中字符以及字符出现的次数

  4.遍历字符数组获取每一个字符,并将字符存储在双列集合中

     存储过程中要做判断,如果集合中不包含这个键,就将该字符当做键,值为1存储,如果集合中包含这个键,就将值加1存储

  5.打印双列集合获取字符出现的次数

 

代码:

import java.util.HashMap;
import java.util.Scanner;

public class Count_HashMap {

public static void main(String[] args) {

Scanner input = new Scanner(System.in);
System.out.println("please input a string:");
String str = input.nextLine();
char[] arr = str.toCharArray();         // 将字符串转换成字符数组

HashMap<Character, Integer> hm = new HashMap<>();         // 定义双列集合

for (char ch : arr) {
/*    if (!hm.containsKey(ch)) {
hm.put(ch, 1);
} else {
hm.put(ch, hm.get(ch) + 1);
}*/
hm.put(ch, !hm.containsKey(ch) ? 1 : hm.get(ch) + 1);          // 存储字符串中字符以及字符出现的次数
}

System.out.println("\nstatistics:");
for (char key : hm.keySet()) {        //  hm.keySet()  ==>  取得所有键的集合
System.out.println("字符'" + key + "'出现" + hm.get(key) + "次");      //  hm.get(key)  ==>  根据键获取值
}

input.close();
}

}


运行结果:





获取相关代码链接请点击:https://github.com/striner/javaCode/blob/master/HashMap

喜欢就请关注哦,你们的关注是我最大的动力~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: