package task07;
/*
* 7、有一个字符串,其中包含中文字符、英文字符和数字字符
* 请统计和打印出各个字符的个数。
*/
public class Task07 {
public static void main(String[] args) {
String str = "中2044国2018广州China";
//各种字符串
StringBuilder hanziStr = new StringBuilder();
StringBuilder engStr = new StringBuilder();
StringBuilder numStr = new StringBuilder();
//保存字符变量
char ch;
for( int i = 0;i < str.length();i ++ ) {
//使用Character.getType()方法获取字符的类型
ch = str.charAt(i);
//判断这个字符的类型,添加到对应的字符串中
switch (Character.getType(ch)) {
case 1: //大写字母
engStr.append(ch);
break;
case 2: //小写字母
engStr.append(ch);
break;
case 5: //中文字符
hanziStr.append(ch);
break;
case 9: //数字
numStr.append(ch);
break;
default:
break;
}
}
//打印各种字符串及其长度
System.out.println("中文\t英文\t数字");
System.out.println(hanziStr.length()+"\t"+engStr.length()+"\t"+numStr.length());
printCh(hanziStr);
printCh(engStr);
printCh(numStr);
}
/**
* 打印StringBuilder每个字符的方法
*/
public static void printCh(StringBuilder sb) {
for(int i = 0;i < sb.length();i ++) {
System.out.print(sb.charAt(i)+" ");
}
System.out.println();
}
}
有一个字符串,其中包含中文字符、英文字符和数字字符 ,请统计和打印出各个字符的个数。
最新推荐文章于 2022-03-20 23:10:13 发布