输入一行字符,分别统计出其英文字母、空格、数字和其他字符的个数。
提示:比如,输入"lwlr@abz456Wb",一行字符是你编写方法的参数
import java.util.Scanner;
/**
*输入一行字符,分别统计出其英文字母、空格、数字和其他字符的个数。
*
*/
public class Count {
/**
* 提示:比如,输入"lwlr@abz456 Wb",一行字符是你编写方法的参数
* @param args
*/
public static void main(String[] args) {
System.out.println(count("lwlr@abz456 Wb"));
}
/**
* 输入一行字符,分别统计出其英文字母、空格、数字和其他字符的个数。
* @param str 字符串
*/
public static String count(String str) {
int letterCounter = 0;//字母个数
int digitCounter = 0;//数字个数
int spaceCounter = 0;//空格个数
int outerCounter = 0;//其他字符个数
//将字符串转化为Char类型的数组
char[] charArray = str.toCharArray();
//循环遍历数组
for (int i = 0; i < charArray.length; i++) {
//判断是否为字母,如果是个数加1
if (Character.isLetter(charArray[i])) {
letterCounter++;
//判断是否为数字,如果是个数加1
}else if (Character.isDigit(charArray[i])) {
digitCounter++;
//判断是否为空格,如果是个数加1
}else if (Character.isSpaceChar(charArray[i])) {
spaceCounter++;
//判断是否为其他字符,如果是个数加1
}else {
outerCounter++;
}
}
//返回查询出来的结果
return "字母的个数是:"+letterCounter+"\n"
+ "数字的个数是:"+digitCounter+"\n"
+ "空格的个数是:"+spaceCounter+"\n"
+ "其他字符个数:"+outerCounter;
}
}
输出结果: