统计字符串中各个字符出现的次数(六)

阅读: 评论:0

统计字符串中各个字符出现的次数(六)

统计字符串中各个字符出现的次数(六)

东家蝴蝶西家飞,白骑少年今日归。 愿,所有迷茫的人,都不再迷茫的,愿,所有努力工作的人,都可以得到应有的回报,愿,所有的人,都可以找到回家的方向,愿,再无苦痛,再无离别。

上一章简单介绍了字符串转换成数据库in语句的形式(五),如果没有看过,请观看上一章

一. 统计字符出现的次数

有一个长字符串,里面有多个不同的字符,统计一下各个字符出现的次数。有很多种方法来实现,可以用一种新的方式去处理,用Map 的方式。 统计时,最好可以按照字母的顺序进行相应的排序,所以可以使用TreeMap 的方式。 利用Map,可以减少空间复杂度。

二. 处理代码

public static String showCount(String str){//1.将字符串转换成相应的字符数组 。 用TreeMap进行相应的接收。char[] charArr&#CharArray();// 用包装类。Map<Character,Integer> map=new TreeMap<Character,Integer>();for (char c : charArr) {  //对每一个字符进行相关的判断。//2. 对传入的字符进行判断。如果不是a-z或者A-Z 就不判断。if(!(c>='a'&&c<='z'||c>='A'&&c<='Z')){continue;}//3.是的话,就从map中判断,看是否能够取出。Integer count&#(c); //看数目。if(count==null){  //即没有取出来,设置数目为1.map.put(c,1);}else{map.put(c,count+1); // 为原来的数目+1}}return mapToString(map);}

三. Map 转换成String 字符串的方法

//将Map转换成相对应的字符串进行输出。public static String mapToString(Map<Character,Integer> map){StringBuilder sb=new StringBuilder();//需要遍历一下这个map.for (Map.Entry<Character, Integer> m: Set()) {sb.Key()+"("&#Value()+")");}String();}

四. 代码

public class StringTest3 {public static void main(String[] args) {String string="adsfahlkj;asdf;sal124+asfdbclsdmnqoqweprqwklhsdf;sdlanzm,nxcwerqabcdefghijklmnopqrstuvwxyz";System.out.println("展示值:"+showCount(string));}public static String showCount(String str){//1.将字符串转换成相应的字符数组 。 用TreeMap进行相应的接收。char[] charArr&#CharArray();Map<Character,Integer> map=new TreeMap<Character,Integer>();for (char c : charArr) {  //对每一个字符进行相关的判断。//2. 对传入的字符进行判断。如果不是a-z或者A-Z 就不判断。if(!(c>='a'&&c<='z'||c>='A'&&c<='Z')){continue;}//3.是的话,就从map中判断,看是否能够取出。Integer count&#(c); //看数目。if(count==null){  //即没有取出来。map.put(c,1);}else{map.put(c,count+1);}}return mapToString(map);}//将Map转换成相对应的字符串进行输出。public static String mapToString(Map<Character,Integer> map){StringBuilder sb=new StringBuilder();//需要遍历一下这个map.for (Map.Entry<Character, Integer> m: Set()) {sb.Key()+"("&#Value()+")");}String();}
}

控制台输出结果为:

展示值:a(7)b(2)c(3)d(7)e(3)f(5)g(1)h(3)i(1)j(2)k(3)l(6)m(3)n(4)o(2)p(2)q(5)r(3)s(8)t(1)u(1)v(1)w(4)x(2)y(1)z(2)

谢谢!!!

本文发布于:2024-01-31 12:40:59,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170667606228588.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:字符串   字符   次数
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23