【题解】分类计数

【问题描述】

输入一个字符串,请输出这个字符串包含多少个大写字母,多少个小写字母,多少个数字。

【输入格式】

输入一行包含一个字符串。

【输出格式】

输出三行,每行一个整数,分别表示大写字母、小写字母和数字的个数。

【样例输入】

1+a=Aab

【样例输出】

1
3
1

【评测用例规模与约定】
对于所有评测用例,字符串由可见字符组成,长度不超过 100。

解题思路

可以利用Character包装类里的方法。

isDigit(char) 判断该字符是否为数字。

isUpperCase(char) 判断该字符是否为大写字母。

isLowerCase(char) 判断字符是否为小写字母。

私下里可以学习一下Character类里的方法

【代码】

import java.util.Scanner;

/**
 * 分类计数
 */

public class count_ {
    public static void main(String[] args) {
        System.out.print("请输入一行字符串:");
        Scanner sc = new Scanner(System.in);

        String str = sc.nextLine();//接收用户输入的字符串

        int upper = 0, lower = 0, digit = 0;

        for (int i = 0; i < str.length(); i++) {
            if (Character.isUpperCase(str.charAt(i))) {
                upper++; //大写字符计数加1
            } else if (Character.isLowerCase(str.charAt(i))) {
                lower++;//小写字符计数加1
            } else if (Character.isDigit(str.charAt(i))) {
                digit++;//数字计算加1
            }
        }
        System.out.printf("%d\n%d\n%d", upper, lower, digit);
    }
}

结果

1
3
1

posted @   Gonfei  阅读(53)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示