您的位置:首页 > 其它

根据字符串中出现的字符逐个打印各字符出现次数

2017-01-16 11:45 288 查看
package com.enterprise.reporting.entity;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
public class Test {
public static void main(String[] stra){
String str = "fgfdhhd5hb56546vg546";// 定义字符串
char arr[] = str.toCharArray();// 转换成字符数组
Arrays.sort(arr);// 数组排序
String temp = new String(arr);// 重新产生字符串
Map map = new HashMap();
//遍历统计
for(int startIndex=0;startIndex<str.length();){
char c = temp.charAt(startIndex);// 获取第一个相同字符
String t = String.valueOf(c);// 把第一个字符转换成字符串
// 获取字符最后出现的位置
int lastIndex = temp.lastIndexOf(t);
System.out.println(t+" 出现的次数为: "+(lastIndex+1-startIndex));
map.put(t, lastIndex+1-startIndex);
startIndex=lastIndex+1;//下次开始的位置
}
System.out.println(map.toString());
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐