题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数
解题思路:
使用字符数组ch收集字符串中的每个字符后遍历
代码实例:
public class Demo7 {
public static void main(String[] args) {
//输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数
int letter = 0;//统计字母
int space = 0;//空格
int digital = 0;//数字
int other = 0;//其他字符
int length = 0;//字符个数
String str;
char[] ch = null;
Scanner reader = new Scanner(System.in);
System.out.print("请输入字符串:");
str = reader.nextLine();
ch = str.toCharArray();//toCharArray--将字符串转换为字符数组
for (int i = 0;i < ch.length;i ++){
if (ch[i] >= '0' && ch[i] <= '9'){
digital ++;
}else if ((ch[i] >= 'a' && ch[i] <= 'z') || (ch[i] >= 'A' && ch[i] <= 'Z')){
letter ++;
}else if (ch[i] == ' '){
space ++;
}else{
other ++;
}
length ++;
}
System.out.println("字符总数为:"+length);
System.out.println("数字个数为:"+digital);
System.out.println("字母个数为:"+letter);
System.out.println("空格个数为:"+space);
System.out.println("其他字符个数为:"+other);
}
输出结果:
请输入字符串:aa bb 22 33 ()
字符总数为:14
数字个数为:4
字母个数为:4
空格个数为:4
其他字符个数为:2