集合框架-统计字符串中每个字符出现的次数案例代码实现
2017-05-01 20:27
651 查看
package cn.itcast_05; import java.util.Scanner; import java.util.Set; import java.util.TreeMap; /* * 需求 :"aababcabcdabcde",获取字符串中每一个字母出现的次数要求结果:a(5)b(4)c(3)d(2)e(1) * * 分析: * A:定义一个字符串(可以改进为键盘录入) * B:定义一个TreeMap集合 * 键:Character * 值:Integer * C:把字符串转换为字符数组 * D:遍历字符数组,得到每一个字符 * E:拿刚才得到的字符作为键到集合中去找值,看返回值 * 是null:说明该键不存在,就把该字符作为键,1作为值存储 * 不是null:说明该键存在,就把值加1,然后重写存储该键和值 * F:定义字符串缓冲区变量 * G:遍历集合,得到键和值,进行按照要求拼接 * H:把字符串缓冲区转换为字符串输出 * * 录入:linqingxia * 结果:result:a(1)g(1)i(3)l(1)n(2)q(1)x(1) */ public class TreeMapDemo { public static void main(String[] args) { // 定义一个字符串(可以改进为键盘录入) Scanner sc = new Scanner(System.in); System.out.println("请输入一个字符串:"); String line = sc.nextLine(); // 定义一个TreeMap集合 TreeMap<Character, Integer> tm = new TreeMap<Character, Integer>(); //把字符串转换为字符数组 char[] chs = line.toCharArray(); //遍历字符数组,得到每一个字符 for(char ch : chs){ //拿刚才得到的字符作为键到集合中去找值,看返回值 Integer i = tm.get(ch); //是null:说明该键不存在,就把该字符作为键,1作为值存储 if(i == null){ tm.put(ch, 1); }else { //不是null:说明该键存在,就把值加1,然后重写存储该键和值 i++; tm.put(ch,i); } } //定义字符串缓冲区变量 StringBuilder sb= new StringBuilder(); //遍历集合,得到键和值,进行按照要求拼接 Set<Character> set = tm.keySet(); for(Character key : set){ Integer value = tm.get(key); sb.append(key).append("(").append(value).append(")"); } //把字符串缓冲区转换为字符串输出 String result = sb.toString(); System.out.println("result:"+result); } }
相关文章推荐
- 集合框架_统计字符串中每个字符出现的次数案例代码实现
- 集合框架-统计字符串中每个字符出现的次数案例图解
- 集合框架_统计字符串中每个字符出现的次数案例图解
- Java基础知识强化之集合框架笔记61:Map集合之统计字符串中每个字符出现的次数的案例
- 一个字符串中出现次数最多的字符 统计这个次数【实现代码】
- 一个字符串中出现次数最多的字符 统计这个次数【实现代码】
- 统计字符串中每个字符出现的次数
- JavaScript统计字符串中每个字符出现次数完整实例
- 统计字符串中每个字符出现的次数 打印结果是:a(2)b(1)
- 统计字符串”abadcdffbaeba”中每个字符出现了多少次,按次数排序并输出
- 第十三周 项目五--字符串操作(1.3)统计每个字符出现次数
- 统计某字符串中每个字符出现的次数
- 用js实现读取出字符串中每个字符重复出现的次数?
- 【字符串处理算法】最长连续字符及其出现次数的算法设计及C代码实现
- 利用Map实现的统计每个输入字符串或则单词出现的次数
- 利用自然顺序统计字符串中每个字符的出现次数
- JavaScript统计字符串中每个字符出现次数完整实例
- 统计字符串”abadcdffbaeba”中每个字符出现了多少次,按次数排序并输出
- 如何用java语言实现遍历字符串中每个字符出现的次数
- 输入任意字符串,统计字符串中每个字符出现的次数