7-1 统计各类字符个数
分数 10
中等
作者 王跃萍
单位 东北石油大学
分别统计一个字符串中出现小写字母、大写字母、数字和空格的个数。
输入格式:
在一行中输入长度不超过40的字符串。
输出格式:
第一行中输出“小写字母=x“
第二行中输出“大写字母=y“
第三行中输出“数字=z”
第四行中输出“空格=m”
所有结果均原样输出,没有列宽控制。
输入样例:
sd2h b57 sA
输出样例:
小写字母=5
大写字母=1
数字=3
空格=2
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
解题思路:
题目要求分别统计一个字符串中出现小写字母、大写字母、数字和空格的个数。可以通过'a'<=ch<='z'或'A'<=ch<='Z'来分别判断大小写字母,也可以直接利用java自带的方法Character.isLowerCase()和Character.isUpperCase()来判断。同理数字和空格也有对应的方法Character.isDigit()和Character.isSpaceChar()
代码实现:
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int lowercase=0,uppercase=0,number=0,blank=0;
String s = sc.nextLine();
char ch[] = s.toCharArray();
for(int i=0;i<ch.length;i++){
if(Character.isLowerCase(ch[i])) lowercase++;
if(Character.isUpperCase(ch[i])) uppercase++;
if(Character.isDigit(ch[i])) number++;
if(Character.isSpaceChar(ch[i])) blank++;
}
System.out.printf("小写字母=%d\n大写字母=%d\n数字=%d\n空格=%d",lowercase,uppercase,number,blank);
}
}