package practiceGO;import java.util.Scanner;/* * 3.输入一个字符串,统计该字符串中分别包含多少个数字,多少个字母,多少个其他字符 */public class Cto { public static void main(String[] args) { int englishCount = 0;// 英文字母个数 int spaceCount = 0;// 空格个数 int numCount = 0;// 数字个数 int otherCount = 0;// 其他字符个数 Scanner sc = new Scanner(System.in); System.out.println("请您输入一行字符:"); String str = sc.nextLine();// 取得控制台输入的一行字符 char[] ch = str.toCharArray();// 把取到的字符串变成一个char数组 for (int i = 0; i < ch.length; i++) { if (Character.isLetter(ch[i])) { // 判断是否为字母 englishCount++; } else if (Character.isSpaceChar(ch[i])) { // 判断是否为空格 spaceCount++; } else if (Character.isDigit(ch[i])) { // 判断是否为数字 numCount++; } else { // 以上都不是则认为是其他字符 otherCount++; } } System.out.println("字母的个数:" + englishCount); System.out.println("数字的个数:" + numCount); System.out.println("空格的个数:" + spaceCount); System.out.println("其他字符的个数:" + otherCount); }}
测试:
请您输入一行字符:yeqc19940112@qq.com字母的个数:9数字的个数:8空格的个数:0其他字符的个数:2
请您输入一行字符:yeqc @@@123456AAA字母的个数:7数字的个数:6空格的个数:2其他字符的个数:3
注:在java中有三个类负责对字符的操作:Character、String、StringBuffer。其中Character类是对单个字符进行操作,String是对一个字符序列的操作,StringBuffer是对一串字符进行操作。
1.Character的声明
public final class Character extends Object implements Serializable,Comparable
2.Character的构造方法
public Character (char){}
3.常用方法
toString()方法
4.通常情况下,我们使用字符时,有时需要使用原始数据类型的字符
char ch = 'a';char uniChar = '\u039A';char[] charArray = {'a','b','c','d','e'};
5.Character类提供了一些有用的类(即静态)方法操作字符。可以创建一个字符的字符构造的对象
Character ch1 = new Character('a');