Java语言程序设计基础篇_编程练习题*18.14 (求字符串中大写字母的个数)
目录
题目:*18.14 (求字符串中大写字母的个数)
代码示例
输出结果
题目:*18.14 (求字符串中大写字母的个数)
编写一个递归方法,返回一个字符串中大写字母的个数。编写一个测试程序,提示用户输人一个字符串,然后显示该字符串中大写字母的数目
-
代码示例
编程练习题18_14TheNumberOfUppercaseLetters.java
package chapter_18;
import java.util.Scanner;
public class 编程练习题18_14TheNumberOfUppercaseLetters {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("Enter a string: ");
String str = input.next();
System.out.println(countUppercaseLetters(str,0));
input.close();
}
public static int countUppercaseLetters(String str, int index) {
if (index < 0 || index >= str.length()) {
// 递归终止条件:当索引超出字符串范围时返回0
return 0;
}
char currentChar = str.charAt(index);
if (currentChar >= 'A' && currentChar <= 'Z') {
// 如果当前字符是大写字母,则计数加1
return 1 + countUppercaseLetters(str, index + 1);
} else {
// 否则,继续检查下一个字符
return countUppercaseLetters(str, index + 1);
}
}
}
-
输出结果
Enter a string: AAa
2