问题描述
输入一个字符串,请输出这个字符串包含多少个大写字母,多少个小写字母,多少个数字。
输入格式
输入一行包含一个字符串。
输出格式
输出三行,每行一个整数,分别表示大写字母、小写字母和数字的个数。
样例输入
1+a=Aab
样例输出
1
3
1
数据范围
对于所有评测用例,字符串由可见字符组成,长度不超过 100。
解法一:利用Ascii码值进行计算
import java.math.BigInteger;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String s=sc.nextLine();
char a[]=s.toCharArray();
int num=0;
int xzm=0;
int dzm=0;
for(int i=0;i<a.length;i++){
if(a[i]>='0'&&a[i]<='9'){
num++;
}
else if(a[i]>='a'&&a[i]<='z'){
xzm++;
}
else if(a[i]>='A'&&a[i]<='Z'){
dzm++;
}
}
System.out.println(dzm);
System.out.println(xzm);
System.out.println(num);
}
}
解法2:利用Character类进行解决
if(Character.isUpperCase(c)) {//字符判断是大写
upp++;
}else if(Character.isLowerCase(c)) {//字符判断是小写
low++;
}else if(Character.isDigit(c)){//字符判断是数字
nums++;
}