用 Map统计字符串中每个字符…

简介: 用 Map统计字符串中每个字符…

package com.baidu.oct4;


import java.util.Iterator;


import java.util.Map;


import java.util.Map.Entry;


import java.util.TreeMap;




public class TreeSetDemo  


{


public static void main(String [] args)


{


String str = "abcdefyadhisn,xiednefmecd casdxsdffg@$%tjukdfds,生活是一杯酒,生活是一首诗";



String count =getCount(str);



 System.out.println(count);




}


// 获取统计的方法


public static String getCount(String str)


{


char [] ch = str.toCharArray();


Map map = new TreeMap();


for (int i = 0; i < ch.length; i++)


{


// 只统计里面英语字母的个数


// if(!(ch[i]>'a'&&ch[i]<'z'||ch[i]>'A'&&ch[i]<'Z'))


// continue;


// 只统计其中汉字个数


//


// if(!(ch[i]>='一'&&ch[i]<='龥'))


// \u4e00              \u9fa5


// continue;


// 获取字符数组顺序对应的值


Integer value = map.get(ch[i]);


int count=1;


if(value!=null)


{


count = value+1;


}


map.put(ch[i], count);


}


return toNewString(map);


}


//将 麻婆 Map 结果转换成自定义格式的字符串


public static String toNewString(Map map)


{


StringBuilder sb = new StringBuilder();


Iterator > it = map.entrySet().iterator();


while(it.hasNext())


{


Entry en = it.next();


char cha= en.getKey();


int value = en.getValue();


sb.append(cha+"{"+value+"}"+" ");


}


return sb.toString();


}


}


运行效果:



统计全部字符串出现次数

只统计其中每个汉字出现的次数

只统计其中每个英文字母出现的次数

相关文章
【Java每日一题,Map和字符串】Ananagrams
【Java每日一题,Map和字符串】Ananagrams
Java 将Map的toString格式字符串转为 Map
Java 将Map的toString格式字符串转为 Map
1302 0
Java 将Map的toString格式字符串转为 Map
|
6月前
|
数据处理
利用Stream流将取到的对象List<对象>形式数据进行分组统计转变成Map<分组条件,数量统计>形式
利用Stream流将取到的对象List<对象>形式数据进行分组统计转变成Map<分组条件,数量统计>形式
60 0
|
6月前
|
Go
|
前端开发 JavaScript API
ES6-ES11-第一部分-let、const、解构赋值、模板字符串、简化对象写法、箭头函数、函数参数默认值、rest 参数、扩展运算符、Symbol、迭代器、生成器、Promise、Set、Map(五)
ES6-ES11-第一部分-let、const、解构赋值、模板字符串、简化对象写法、箭头函数、函数参数默认值、rest 参数、扩展运算符、Symbol、迭代器、生成器、Promise、Set、Map(五)
|
6月前
|
存储 Java API
利用Stream流将取到的对象List<对象>形式数据进行分组统计转变成Map<分组条件,数量统计>形式
利用Stream流将取到的对象List<对象>形式数据进行分组统计转变成Map<分组条件,数量统计>形式
168 0
|
6月前
|
算法 测试技术 C#
【map】【滑动窗口】【字典树】C++算法:最长合法子字符串的长度
【map】【滑动窗口】【字典树】C++算法:最长合法子字符串的长度
jdk8 Stream流中将集合转成map,重复key处理,统计最大值,获取某个属性集合等10种最常用方法
jdk8 Stream流中将集合转成map,重复key处理,统计最大值,获取某个属性集合等10种最常用方法
170 5
|
6月前
Stream流中将集合转成map,重复key处理,统计最大值,获取某个属性集合等12种最常用方法
Stream流中将集合转成map,重复key处理,统计最大值,获取某个属性集合等12种最常用方法
125 0
|
JSON 数据格式
JSON字符串与Map互转
JSON字符串与Map互转
395 0