目录
一、题目要求
二、解题思路
三、具体代码
四、运行截图
一、题目要求
分别统计字符串中出现的大写字母、小写字母个数,以及出现的数字字符以及其他字符的个数。
二、解题思路
本题的解题思路是,统计大写字符时,利用toLowerCase将字符串全部转换为小写字符,再将原字符串与转换后的字符串通过toCharArray方法全部转换为字符数组,通过对两个字符数组的遍历比较,设置count计数,当出现比对不同时,count++,最终得到统计个数。统计小写字符和统计大写字符思路差不多。
数字字符的统计可以利用原字符串转换的字符数组,遍历字符数组,当字符大小处于0~9区间时说明是数字字符,计数器加一。
统计其他字符只需要求出字符串的长度,再减去前三种情况记的数即可。
三、具体代码
public class StringNum {public static void main(String[] args) {String str= "Shen_g_CaiXia_!666";System.out.println("一共有"+str.length()+"个字符");System.out.println("大写字母的个数:"+upperCount(str));System.out.println("小写字母的个数:"+lowerCount(str));System.out.println("数字字符的个数:"+numberCount(str));int otherCount=str.length()-upperCount(str)-lowerCount(str)-numberCount(str);System.out.println("其他字符的个数:"+otherCount);}public static int upperCount(String str) {//统计字符串中大写字母的个数String strUpper = str.toLowerCase();char[] chars = str.toCharArray();char[] charsUpper = strUpper.toCharArray();int count = 0;for (int i = 0; i < str.length(); i++) {if (chars[i] != charsUpper[i]) {count++;}}return count;}public static int lowerCount(String str) {//统计字符串中小写字母的个数String strLower = str.toUpperCase();char[] chars = str.toCharArray();char[] charsUpper = strLower.toCharArray();int count = 0;for (int i = 0; i < str.length(); i++) {if (chars[i] != charsUpper[i]) {count++;}}return count;}public static int numberCount(String str) {//统计字符串中数字字符的个数char[] chars = str.toCharArray();int count = 0;for (int i = 0; i < str.length(); i++) {if (chars[i] >='0'&&chars[i]<= '9') {count++;}}return count;}}
四、运行截图
Java实验——分别统计字符串中出现的大写字母 小写字母个数 以及出现的数字字符以及其他字符的个数