题目描述
输入一行字符,分别统计出包含英文字母、空格、数字和其它字符的个数。
/**
* 统计出英文字母字符的个数。
*
* @param str 需要输入的字符串
* @return 英文字母的个数
*/
public static int getEnglishCharCount(String str)
{
return 0;
}
/**
* 统计出空格字符的个数。
*
* @param str 需要输入的字符串
* @return 空格的个数
*/
public static int getBlankCharCount(String str)
{
return 0;
}
/**
* 统计出数字字符的个数。
*
* @param str 需要输入的字符串
* @return 英文字母的个数
*/
public static int getNumberCharCount(String str)
{
return 0;
}
/**
* 统计出其它字符的个数。
*
* @param str 需要输入的字符串
* @return 英文字母的个数
*/
public static int getOtherCharCount(String str)
{
return 0;
}
输入描述:
输入一行字符串,可以有空格
输出描述:
统计其中英文字符,空格字符,数字字符,其他字符的个数
示例1
输入
1qazxsw23 edcvfr45tgbn hy67uj m,ki89ol.\/;p0-=\][
输出26
3
10
12
代码实现:
package cn.c_shuang.demo40;
import java.util.Scanner;
/**
* 输入一行字符,分别统计出包含英文字母、空格、数字和其它字符的个数
* @author Cshuang
*
*/
public class Main {
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
while(in.hasNext()){
String s=in.nextLine();
//其实可以直接定义一个数组,然后对数组,进行输出
int enCnt=0, blanCnt=0,numCnt=0,othCnt=0;
for (int i = 0; i < s.length(); i++) {
char c=s.charAt(i);
if(String.valueOf(c).matches("[a-zA-Z]")){
enCnt++;
}else if(c==' '){
blanCnt++;
}else if(String.valueOf(c).matches("[0-9]")){
numCnt++;
}else{
othCnt++;
}
}
System.out.println(enCnt+"\n"+blanCnt+"\n"+numCnt+"\n"+othCnt);
}
in.close();
}
}