题目描述:
输入一个字符串,请输出这个字符串包含多少个大写字母,多少个小写字母,多少个数字。
【输入格式】
输入一行包含一个字符串。
【输出格式】
输出三行,每行一个整数,分别表示大写字母、小写字母和数字的个数。
【样例输入】
1+a=Aab
【样例输出】
1
3
1
题目分析:
题目中给定的为一个字符串,求各类数据类型的个数;将数据中的每一个元素提取出来,放入每一个数据类型的区间中 进行比较,若该元素符合该区间则对该数据类型的总数进行加一操作。
代码实现:
方法一:
public class CountNum {
public static void main (String args[]) {
int countNum = 0;
int countnum = 0;
int countnumber = 0;
String str = "1+a=Aab";
for(int i = 0 ;i<str.length();i++) {
if(str.charAt(i)>='A'&&str.charAt(i)<='Z') {
countNum++;
}else if(str.charAt(i)>='a'&&str.charAt(i)<='z') {
countnum++;
}else if(str.charAt(i)>='0'&&str.charAt(i)<='9') {
countnumber++;
}
}
System.out.println(countNum++);
System.out.println(countnum++);
System.out.println(countnumber++);
}
}
方法二:
public class CountNum {
public static void main (String args[]) {
int countNum = 0;
int countnum = 0;
int countnumber = 0;
String str = "1+a=Aab";
StringBuffer bf = new StringBuffer();
for(int i = 0;i<str.length();i++) {
bf.append(str.charAt(i));
bf.append(" ");
}
String [] Str =bf.toString().split(" ");
for(int n =0;n<Str.length;n++) {
if(Str[n].charAt(0)>='A'&&Str[n].charAt(0)<='Z') {
countNum++;
}else if(Str[n].charAt(0)>='a'&&Str[n].charAt(0)<='z') {
countnum++;
}else if(Str[n].charAt(0)>='0'&&Str[n].charAt(0)<='9') {
countnumber++;
}
}
System.out.println(countNum++);
System.out.println(countnum++);
System.out.println(countnumber++);
}
}