代码需求

  如有这么一个字符串

String str = "fdg+avAdc  bs5dDa9c-dfs";

  MapTest.java

package zhouls.bigdata.DataFeatureSelection.test;import java.util.Iterator;
import java.util.Map;
import java.util.TreeMap;/** 练习:*         "fdgavcbsacdfs" 获取该字符串中,每一个字母出现的次数。*         要求打印结果是:a(2)b(1)...;* * 思路:*         对于结果的分析发现,字母和次数之间存在着映射的关系。而且这种关系很多。*         很多就需要存储,能存储映射关系的容器有数组和Map集合。* 关系一方式有序编号吗?没有!* 那就是使用Map集合。 又发现可以保证唯一性的一方具备着顺序如 a b c ...* 所以可以使用TreeMap集合。* * 这个集合最终应该存储的是字母和次数的对应关系。 * * 1,因为操作的是字符串中的字母,所以先将字符串变成字符数组。* 2,遍历字符数组,用每一个字母作为键去查Map集合这个表。*         如果该字母键不存在,就将该字母作为键 1作为值存储到map集合中。*         如果该字母键存在,就将该字母键对应值取出并+1,在将该字母和+1后的值存储到map集合中,*   键相同值会覆盖。这样就记录住了该字母的次数.* 3,遍历结束,map集合就记录所有字母的出现的次数。oy.* * */public class MapTest {/*** @param args*/public static void main(String[] args) {String str = "fdg+avAdc  bs5dDa9c-dfs";String s = getCharCount(str);System.out.println(s);}public static String getCharCount(String str) {//将字符串变成字符数组 char[] chs = str.toCharArray(); //定义map集合表。Map<Character,Integer> map = new TreeMap<Character,Integer>();for (int i = 0; i < chs.length; i++) {if(!(chs[i]>='a' && chs[i]<='z' || chs[i]>='A' && chs[i]<='Z'))
//            if(!(Character.toLowerCase(chs[i])>='a' && Character.toLowerCase(chs[i])<='z'))continue;//将数组中的字母作为键去查map表。            Integer value = map.get(chs[i]);int count = 1;//判断值是否为null.if(value!=null){count = value+1;}map.put(chs[i], count);if(value==null){map.put(chs[i], 1);}else{map.put(chs[i], value+1);}}return mapToString(map);}private static String mapToString(Map<Character, Integer> map) {StringBuilder sb = new StringBuilder();Iterator<Character> it = map.keySet().iterator();//这是map的取值,先找到丈夫,再Iterator只能正向遍历集合,适用于获取移除元素while(it.hasNext()){Character key = it.next();Integer value = map.get(key);sb.append(key+"("+value+")");}return sb.toString();}
}

Map集合练习之对字符串中字母出现的次数求和相关推荐

  1. python统计表中单词及其出现的次数 字典形式输出_统计字符串中字母出现的次数,字典形式输出(python)...

    a = "aAsmr3idd4bgs7Dlsf9eAF" 请将a字符串的数字取出,并输出成一个新的字符串. 请统计a字符串出现的每个字母的出现次数(忽略大小写,a与A是同一个字母) ...

  2. python字典统计字母出现次数_第三篇 python运用字典统计字符串中字母出现的次数-Go语言中文社区...

    碎碎念 这个内容还是我日常互相种草的好友提供的素材,很基础也很实用,稍微进阶一些就可以用来统计文章中的单词出现的频率了.她在网上找的代码用了库,通过python中的字典可以很简洁的完成.(下图是她在网 ...

  3. python技巧 计算字符串中字母出现的次数并取出最大

    有一个字符串 "aaddfdfdercfghfyttefsfsfewretr123trefg5624sdfcgvfdgte6435234532",现在需要取出里面出现次数最多的字符 ...

  4. ACMNO.26 C语言-字符统计2 编写一函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其它字符的个数,在主函数中输入字符串以及输出上述结果。 只要结果,别输出什么提示信息。

    题目描述 编写一函数,由实参传来一个字符串,统计此字符串中字母.数字.空格和其它字符的个数, 在主函数中输入字符串以及输出上述结果. 只要结果,别输出什么提示信息. 输入 一行字符串 输出 统计数据, ...

  5. 查询字符串中字母出现的个数

    /*查询字符串中字母出现的个数*/             string str = " Welcom Hello World";             Dictionary&l ...

  6. Java黑皮书课后题第6章:*6.20(计算一个字符串中字母的个数)编写一个方法,使用下面的方法体计算字符串中的字母个数。编写一个测试程序,提示用户输入字符串,然后显示字符串中的字母个数

    6.20(计算一个字符串中字母的个数)编写一个方法,使用下面的方法体计算字符串中的字母个数.编写一个测试程序,提示用户输入字符串,然后显示字符串中的字母个数 题目 题目描述 破题 代码 运行示例 题目 ...

  7. 从命令行参数中得到一个字符串,统计该字符串中字母 a 的出现次数。

    从字节或字符串数组中得到一个字符串,统计该字符串中字母 a 的出现次数. public class Test2 {public static void main(String[] args) {// ...

  8. 统计字符个数的c语言程序设计,编写一个函数,由实参传来一个字符串,统计此字符串中字母,数字,空格和其他字符的个数。...

    编写一个函数,由实参传来一个字符串,统计此字符串中字母,数字,空格和其他字符的个数.在主函数中输入字符串以及输出上述结果. [c源程序] #include int letter,digit,space ...

  9. 编程. 已知字符串:this is a test of java. 按要求执行以下操作: (1) 统计该字符串中字母s出现的次数 (2) 取出子字符串test (3) 用多种方式将本字

    package Char_String;import com.sun.xml.internal.ws.util.StringUtils;import java.util.Arrays;/** * Cr ...

最新文章

  1. [na]pc加入域认证细节
  2. 苹果ANCS协议学习【转】
  3. Windows XP Mode for Windows 7
  4. mysql支持UUID做外键_Mysql中以uuid为外键插入多条数据,怎样实现同一个二级分类外键关联的数据为同一个uuid的值...
  5. 【CentOS 7笔记24】,实验中发生的磁盘小故障#
  6. 深度学习笔记 第五门课 序列模型 第三周 序列模型和注意力机制
  7. 如何从ngrx store中获取Observable对象
  8. 【渝粤教育】国家开放大学2018年秋季 2083T信息技术与教育技术(2) 参考试题
  9. win32键盘输入python_python-win32api键盘输入教程
  10. 计算机无法连接无线信号,win7系统连接无线信号时提示Windows无法连接到路由器名称的四种解决方法...
  11. 4步精准诊断“门店数字化”问题,助力门店起死回生
  12. C++STL源码剖析之vector
  13. android加密打包,(爱加密系列教程二十)Xamarin开发Android应用、如何打包apk(转载)...
  14. ShuffleNet v2
  15. python xlrd 写入已有的excel并保留原excel格式
  16. word2019每页设置不同页眉
  17. 什么是用户实体行为分析(UEBA)
  18. 实时记录运动轨迹插件_Matlab Mobile高逼格实时记录GPS运动轨迹(各项参数统计计算)——无第三方包依赖...
  19. 互联网大佬纷纷搞养殖,这是为哪般~~~
  20. 秒换算 天 时 分 秒

热门文章

  1. 人工智能进阶-CIFAR-10数据集介绍
  2. 海康威视 AI Cloud 软硬件平台
  3. 人工智能如何彻底改变全球物流和供应链管理
  4. 干货|全面理解无监督学习基础知识
  5. 重磅丨国家发改委公布56个AI支持项目名单
  6. 专访丨周志华:深度学习理论探讨比应用滞后太多
  7. Python 之 Pandas (六)合并
  8. (如何从一个列表中随机抽样)np.random.choice(),random.sample()
  9. SOR迭代求解线性方程组代码实现
  10. 黄仁勋回应放弃收购Arm:公司战略并没有太大改变