1 import java.util.Scanner; 2 3 public class Count { 4 5 /** 6 * 输入一行字符,分别统计其中英文字母、空格、数字和其他字符的个数 7 * 8 * @param args 9 */ 10 public static void main(String[] args) { 11 int digitCount = 0; 12 int trimCount = 0; 13 int englishCount = 0; 14 int otherCount = 0; 15 16 Scanner sc = new Scanner(System.in); 17 System.out.println("请输入一行字符:"); 18 String str = sc.nextLine();// 此处不能用next(),会将字符传中的空格等字符过滤掉,导致无法计数 19 for (int i = 0; i < str.length(); i++) { 20 char ch = str.charAt(i); 21 if (ch >= '0' && ch <= '9') { 22 digitCount++; 23 } else if (ch <= 'z' && ch >= 'a' || ch <= 'Z' && ch >= 'A') { 24 englishCount++; 25 } else if (ch == ' ') { 26 trimCount++; 27 } else { 28 otherCount++; 29 } 30 } 31 System.out.println(str + "==数字:" + digitCount + "--字母:" + englishCount 32 + "--空格:" + trimCount + "--其他字符:" + otherCount); 33 } 34 }