需求:统计一个字符串中大写字母,小写字母,数字出现的次数
"HadoopJava12138"
结果:
大写字符:2个
小写字符:8个
数字字符:5个
分析:
1、定义三个变量统计三个结果:
bigCount = 0;
smallCount = 0;
numberCount = 0;
2、遍历字符串,得到每一个字符
for循环遍历,长度为length(),charAt()
3、判断每个是属于哪一类的
bigCount++;
smallCount++;
numberCount++
如何判断是大写还是小写呢?
ASCLL码值:
'0' 48
'A' 65
'a' 97
4、输出结果
public class StringDemo9 {
public static void main(String[] args) {
String s = "HadoopJava12138";
//定义三个变量统计三个结果:
int bigCount = 0;
int smallCount = 0;
int numberCount = 0;
//遍历字符串,得到每一个字符
for (int i = 0; i < s.length(); i++) {
char c = s.charAt(i);
//判断每个是属于哪一类的
if (c >= 'a' && c <= 'z') {
smallCount++;
} else if (c >= 'A' && c <= 'Z') {
bigCount++;
} else if (c >= '0' && c <= '9') {
numberCount++;
}
}
//输出结果
System.out.println("大写字符的个数为:" + bigCount);
System.out.println("小写字符的个数为:" + smallCount);
System.out.println("数字字符的个数为:" + numberCount);
}
}
/*
需求:把一个字符串的首字母转成大写,其余的都是小写。
举例:"HadoOPJava" ---> "Hadoopjava"
分析:
方式1:
1、先获取第一个字符
2、再获取除了第一个以外的字符
3、把第一步的字符转成大写
4、把第二部获取的字符转成小写
5、把第三步和第四步的字符串拼接
6、输出
方式2:
1、把字符串全部转成小写
2、获取第一个字符,转成大写
*/
public class StringDemo10 {
public static void main(String[] args) {
//定义一个字符串
String s = "HadoOPJava";
//1、先获取第一个字符
// char c = s.charAt(0);
String s1 = s.substring(0,1);
//2、再获取除了第一个以外的字符
String s2 = s.substring(1);
//把第一步的字符转成大写
String s3 = s1.toUpperCase();
//4、把第二部获取的字符转成小写
String s4 = s2.toLowerCase();
//5、把第三步和第四步的字符串拼接
String result = s3.concat(s4);
System.out.println("HadoOPJava转换结果为:"+result);
System.out.println("链式编程:");
String concat = s.substring(0, 1)
.toUpperCase()
.concat(s.substring(1)
.toLowerCase());
System.out.println("HadoOPJava转换结果为:"+concat);
}
}