面试题---长字符串中统计每个字母出现次数
脚本之家
长字符串中统计每个字母出现次数
给定常字符串:abcsdfdjfkdscaaacccbbbkssss
结果输出:a(4)b(4)c(5)s(6)d(3)f(2)j(1)k(2)
代码
import java.util.LinkedHashMap; import java.util.Map; import java.util.Scanner; import java.util.Set; public class MyTest04 { public static void main(String[] args) { // Scanner sc = new Scanner(System.in); // String s = sc.nextLine(); String str="abcsdfdjfkdscaaacccbbbkssss"; LinkedHashMap<Character, Integer> map = new LinkedHashMap<>(); // 字母统计算法 for (int i = 0; i < str.length(); i++) { char ch=str.charAt(i); if (!map.containsKey(ch)){ map.put(ch,1); }else{ Integer num = map.get(ch); num++; map.put(ch,num); } } // 拼串 StringBuffer sb = new StringBuffer(); Set<Map.Entry<Character, Integer>> entries = map.entrySet(); for (Map.Entry<Character, Integer> entry:entries){ sb.append(entry.getKey()).append("("+entry.getValue()+")"); } System.out.println(sb.toString()); } }
总结
以上所述是小编给大家介绍的面试题---长字符串中统计每个字母出现次数,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!