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<Character>
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‘);
java循环练习:输入一个字符串,统计该字符串中分别包含多少个数字,多少个字母,多少个其他字符
原文地址:http://11317783.blog.51cto.com/11307783/1762308