本文主要是介绍给出一组字符,要求输出该字符串中的小写字母个数、大写字母个数以及数字字符个数,其余字符计为一体,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目:给出一组字符,要求输出该字符串中的小写字母个数、大写字母个数以及数字字符个数,其余字符计为一体。
示例:Hello,My name is Dashuaige,I'm 12 years old.
方法一:通过对ascii码表的规律可知
- 小写字母x: 'a'=<x<='z' (或97=<x<=122)
- 大写字母x: 'A'=<x<='Z' (或65=<x<=90 )
- 数字字符x: 'A'=<x<='Z' (或48=<x<=57 )
可统计出字符串中的数字字符、大写字符、小写字符。
方法二:针对大小写
- 将字符串变成字符数组
- 然后将每个字符进行变大写,变小写,与原来的字符拿来匹配,如果不等,则发生变化,计数
- 针对数字如方法一
toUpperCase()变大写
toLowerCase()变小写
方法一:比较实用,推荐使用。
public class lj01 {public static void main(String[] args) {方法一:原始方法System.out.println("请输入一段字符串(可包含英文大小写,数字,中文以及其他符号)");Scanner sc=new Scanner(System.in); String str=sc.nextLine();char[] chs = str.toCharArray() ;//将字符串转换为字符数组int bigCount=0;int smallCount=0;int numCount=0;int otherCount=0;for(int i=0;i<str.length();i++) {if(chs[i]>='A'&& chs[i]<='Z') {bigCount++;}else if(chs[i]>='a'&& chs[i]<='z'){smallCount++;}else if(chs[i]>='0'&&chs[i]<='9') {numCount++;}else{otherCount++;}}System.out.println("大写字母字符的个数为"+bigCount);System.out.println("小写字母字符的个数为"+smallCount);System.out.println("数字字符的个数为"+numCount);System.out.println("其他字符的个数为"+otherCount);}
}
方法二:阅读参考(此种方法只针对英文字符的大小写)。
public class lj01 {public static void main(String[] args) {System.out.println("请输入一段字符串(可包含英文大小写,数字,中文以及其他符号)");Scanner sc=new Scanner(System.in); String str=sc.nextLine();//原字符串char[] chs = str.toCharArray() ;//将字符串转换为字符数组int bigCount=0;int smallCount=0;String str2=str.toUpperCase();//大写字符串char[] arr2 = str2.toCharArray() ;for(int i=0;i<str2.length();i++) {if(arr2[i]==chs[i]&& arr2[i]<97+27&& arr2[i]>64) {bigCount++;} }String str3=str.toLowerCase();//大写字符串char[] arr3 = str3.toCharArray() ;for(int i=0;i<str3.length();i++) {if(arr3[i]==chs[i]&& arr3[i]<97+27&& arr3[i]>64) {smallCount++;} }System.out.println("大写字母字符有"+bigCount);System.out.println("小写字母字符有"+smallCount); }
}
日常鸡汤:有一种落差是
你配不上自己的野心
也辜负了所受的苦难。。。
这篇关于给出一组字符,要求输出该字符串中的小写字母个数、大写字母个数以及数字字符个数,其余字符计为一体的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!