[Java][TreeMap][StringBuilder]提取字符串中的某种特定字符并计数+更改输出样式

2023-12-14 16:06:34
字符串“aaaabwfa”
统计字符出现的次数,并且按照以下的格式进行输出
输出结果:
a(5),b(4)c(3)d(2)e(1);
新的统计思想: 利用map集合进行统计
如果说题目中没有要求对结果进行排序 Hashmap
如果说题目中要求对结果进行排序 用Treemap
键:表示要统计的内容
值:表示次数
import java.util.TreeMap;
import java.util.function.BiConsumer;

public class Main{
    public static void main(String[] args){
        /*
        字符串“aaaabwfa”
        统计字符出现的次数,并且按照以下的格式进行输出
        输出结果:
        a(5),b(4)c(3)d(2)e(1);
        新的统计思想: 利用map集合进行统计
        如果说题目中没有要求对结果进行排序 Hashmap
        如果说题目中要求对结果进行排序 用Treemap
        键:表示要统计的内容
        值:表示次数
         */
        int count =0;
        //1.定义字符串
        String s = "aabbccd";
        TreeMap<Character,Integer> tm = new TreeMap<>();
        for(int i=0;i<s.length();i++){
            char c = s.charAt(i);
            if (tm.containsKey(c)){
                count = tm.get(c);
                count++;
                tm.put(c,count);
            }else{
                tm.put(c,1);
            }
        }
        //4.遍历集合并且按照指定方式进行拼接
        StringBuilder sb = new StringBuilder();
        tm.forEach(new BiConsumer<Character,Integer>(){
            @Override
            public void accept(Character key,Integer value){
                sb.append("|").append(key).append("(").append(value).append(")");
            }
        });
        System.out.println(sb);

    }
}

文章来源:https://blog.csdn.net/qq_37511412/article/details/134925491
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。