String类有许多获取方法,API文档里面可查看。针对获取方法,给出小案例。
/*
* 需求:遍历获取字符串中的每一个字符
* 分析:
用到两个方法:
char charAt(int index) 表示获取字符串指定索引的字符
int length() 表示获取字符串的长度
*/
public class StringTest {
public static void main(String[] args) {
// 定义字符串
String s = "helloworld";
//思考,要想获取每个索引而且效率比较高,用for循环改进。
for (int x = 0; x < s.length(); x++) {
// char ch = s.charAt(x);
// System.out.println(ch);
// 仅仅是输出,我就直接输出了
System.out.print(s.charAt(x));
}
}
}
再写一个小案例:
/*
* 需求:统计一个字符串中大写字母字符,小写字母字符,数字字符出现的次数。(不考虑其他字符)
* 举例:
* "Hello123World"
* 结果:
* 大写字符:2个
* 小写字符:8个
* 数字字符:3个
*
* 分析:
* 前提:字符串要存在
* A:定义三个统计变量
* bigCount=0
* smallCount=0
* numberCount=0
* B:遍历字符串,得到每一个字符。
* length()和charAt()结合
* C:判断该字符到底是属于那种类型的
* 大:bigCount++
* 小:smallCount++
* 数字:numberCount++
* D:输出结果。
*
*/
public class StringTest2 {
public static void main(String[] args) {
//定义一个字符串
String s = "Hello123World";
//定义三个统计变量
int bigCount = 0;
int smallCount = 0;
int numberCount = 0;
//遍历字符串,得到每一个字符。
for(int x=0; x<s.length(); x++){
char ch = s.charAt(x);
//判断该字符到底是属于那种类型的
if(ch>='a' && ch<='z'){
smallCount++;
}else if(ch>='A' && ch<='Z'){
bigCount++;
}else if(ch>='0' && ch<='9'){
numberCount++;
}
}
//输出结果。
System.out.println("大写字母"+bigCount+"个");
System.out.println("小写字母"+smallCount+"个");
System.out.println("数字"+numberCount+"个");
}
}
其实有更简单的方式获取大小写数字个数的方法。后面会写。