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);
    }
}

运行测试结果如下:

相关推荐
编程(变成)小辣鸡16 分钟前
Spring事务失效场景
java·后端·spring
心中有国也有家1 小时前
AtomGit Flutter 鸿蒙客户端:呼吸练习的完整生命周期
学习·flutter·华为·harmonyos
Zeeland1 小时前
构建护城河:自学习 Agent
学习
极客先躯1 小时前
高级java每日一道面试题-2026年03月30日-实战篇[Docker]-如何监控容器的网络流量?
java·运维·docker·容器·prometheus·高级面试
tachibana21 小时前
hot100 翻转二叉树(226)
java·数据结构·算法·leetcode
brave_zhao2 小时前
nginx的进程架构
java·学习·nginx
兰令水2 小时前
leecodecode【面试150】【2026.7.9打卡-java版本】
java·数据结构·leetcode·面试·职场和发展
禾高网络2 小时前
互联网医院|AI 互联网医院成品开发系统
java·大数据·人工智能·小程序
枫零NET2 小时前
跟着OpenCode学习Pi Coding Agent-05-Agent的类型系统
人工智能·学习
Day(AKA Elin)2 小时前
【Day】MTP(Multi Token Prediction)技术学习
python·深度学习·学习·llama