Java字符统计:从输入到输出的完整解析

题目:输入一行字符串(可能包含空格),统计其中的字母、数字、空格和其他字符的个数。输出格式:"字母:x 数字:y 空格:z 其他:w"。
【样例输入】

Hello 123!

【样例输出】

字母:5 数字:3 空格:1 其他:1

下面是作者写的代码,在命名上不够严谨,严谨的命名规则应该是用英文单词,此处我以中文拼音与正常的命名格式大小写来进行变量命名,这样方便初学者理解每个变量是做什么的。

java 复制代码
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String str = scanner.nextLine();
        //定义整数类型
        int ziMu = 0;
        int shuZi = 0;
        int kongGe = 0;
        int qiTa = 0;
        
        for (int i = 0; i < str.length(); i++) {
            char c = str.charAt(i);
            if ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z')) {
                ziMu++;
            } else if (c >= '0' && c <= '9') {
                shuZi++;
            } else if (c == ' ') {
                kongGe++;
            } else {
                qiTa++;
            }
        }
        System.out.println("字母:" + ziMu + " 数字:" + shuZi + " 空格:" + kongGe + " 其他:" + qiTa);
    }
}

运行测试结果如下:

相关推荐
文丑颜不良啊14 分钟前
LeetCode2441~2460题目解析
java·leetcode
阿屿1 小时前
从零手搓 AI 伴侣(二):好感度通胀危机,与它的「货币政策」
java·人工智能
蒸蒸yyyyzwd1 小时前
从后端面经学到的 3 个知识
笔记·学习
灿飞1 小时前
Kotlin与Java虚拟机十一:类与属性:构造顺序、backing field 与显式 backing field
java·后端·kotlin
17岁的勇气1 小时前
Unity Shader unity文档学习笔记(二十二):shader变体
笔记·学习·unity
aiks_yuan1 小时前
40亿个QQ号 1G内存怎么去重:Java BitSet 装不下,long 数组位图 512MB 实测 46 秒(JDK 17)
java
文丑颜不良啊1 小时前
LeetCode2521~2540题目解析
java·leetcode
杨凯凡1 小时前
Spring Framework 7 HTTP Interface 实战:声明式 RestClient、超时与测试
java·spring·http
吴名氏.2 小时前
Java转AI Agent教程(第十二周)检索与切分
java·开发语言·人工智能·ai·ai agent
瑞雪兆丰年兮2 小时前
JavaWeb-day10-SpringBootWeb案例
java·开发语言·javaweb·web