输入一串只含有中文、英文和数字的字符串,统计其中中文字符、英文字符和数字字符各有多少个?

public class StatisticZEN {
    public static void main(String[] args) {
        String str = "中国aadf的111萨bbb菲的zz萨菲";
        statisticsChar(str);
    }

    private static HashMap<String, Integer> statisticsChar(String str) {
        int chineseCount = 0;
        int englishCount = 0;
        int digitCount = 0;
        for (int i = 0; i < str.length(); i++) {
            char c = str.charAt(i);
            if(c>='0' && c<='9')
                digitCount ++;
            else if((c>='a' && c<='z') || (c>='A' && c<='Z'))
                englishCount ++;
            else
                chineseCount ++;
        }
        HashMap<String, Integer> map = new HashMap<String, Integer>();
        map.put("中文字符", chineseCount);
        map.put("英文字符", englishCount);
        map.put("数字字符", digitCount);
        return map;
    }
}
原文地址:https://www.cnblogs.com/lxcmyf/p/7107023.html