思路
既然要键盘输入,那么可以通过Scanner类来实现,首先定义四个变量分别记录下字母个数的变量、数字个数、其他字符和空格个数。因为要操作字符串,可以把字符串String类型转换成char字节数组类型。所以用到Character类,转换成字节数组后操作起来则更简单。有判断是否是字母的isLetter方法,还有分别能判断是否是数字和空格的的isDigit方法和isSpaceChar方法.既然这样了,知道这些就能直接遍历这个字节数组判断一下最后打印输出即可。
代码
import java.util.Scanner;
//题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
public class WriteDownmathCount {
public static void main(String[] args) {
int abcCount = 0;// 字母的个数的变量。
int numCount = 0;// 数字个数的变量。
int otherCount = 0;// 其他字符的变量。
int spaceCount = 0;//空格键个数。
Scanner sc = new Scanner(System.in);
System.out.println("请随便输入点什么吧~");
String str = sc.nextLine();
char[] ch = str.toCharArray();// 将要输入的字符串转换成字节数组。
for (int i = 0; i < ch.length; i++) {// 遍历这个字节数组。
if (Character.isLetter(ch[i])) {
abcCount++;
} else if (Character.isDigit(ch[i])) {
numCount++;
} else if (Character.isSpaceChar(ch[i])) {
spaceCount++;
} else {
otherCount++;
}
}
System.out.println("字母个数:" + abcCount+"个");
System.out.println("数字个数:" + numCount+"个");
System.out.println("空格个数:" + spaceCount+"个");
System.out.println("其他字符个数:" + otherCount+"个");
}
}
运行结果
版权声明:本文为qq_43055855原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。