首页 > 代码库 > java统计abacbacdadbc中的每个字母出现的次数,输出格式是:a(4)b(3)c(3)d(2)
java统计abacbacdadbc中的每个字母出现的次数,输出格式是:a(4)b(3)c(3)d(2)
原文:http://www.open-open.com/code/view/1456919325625
import java.util.Iterator; import java.util.Map; import java.util.Set; import java.util.TreeMap; /* * 统计abacbacdadbc中的每个字母出现的次数,输出格式是:a(4)b(3)c(3)d(2) * * 选中TreeMap的原因是:key不重复且按顺序排序取出 * * 思路: * 1.将字符串abacbacdadbc转换成字符数组 * 2.分别取字符,与TreeMap中的key进行比较 * 2.1 如果TreeMap中存在对应的字符,则取出并自增,再存入TreeMap * 2.2 如果TreeMap中不存在对应的字符,则直接存入该字符,value=http://www.mamicode.com/1>*/ public class A3B1C2_TreeMapTest { public static void main(String[] args) { TreeMap<String, Integer> tm=new TreeMap<>(); String string="abacbacdadbc"; char[] ch=string.toCharArray(); for(char r :ch){ //tm.put(String.valueOf(r), 1); //System.out.println(r); if(compareKey(r, tm)) { int i=tm.get(String.valueOf(r)); i++; tm.put(String.valueOf(r), i); }else { tm.put(String.valueOf(r), 1); } } System.out.println(tm); Set<Map.Entry<String, Integer>> entrySet=tm.entrySet(); Iterator<Map.Entry<String, Integer>> iterator=entrySet.iterator(); while(iterator.hasNext()){ Map.Entry<String, Integer> me=iterator.next(); String key=me.getKey(); int value=http://www.mamicode.com/me.getValue(); System.out.print(key+"("+value+")"); } } public static boolean compareKey(char c,TreeMap<String, Integer> treeMap){ if (treeMap.containsKey(String.valueOf(c))) { return true; } return false; } }
java统计abacbacdadbc中的每个字母出现的次数,输出格式是:a(4)b(3)c(3)d(2)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。