我正在尝试创建一个简单的程序,通过循环遍历每个字符并递增累加变量来计算字符串中大写字符的数量。以下是我的代码:
String str = "JuSTin"; //3 uppercase characters
int upperCaseCount = 0; //increment each time an uppercase character is encountered
char character; //the current character
for(int i = 0; i < str.length(); i++)
{
character = str.charAt(i);
System.out.println(character); //Log all characters to console just to see what is going on
if(Character.isUpperCase(character))
upperCaseCount++;
i++;
}
System.out.println("Uppercase characters: " + upperCaseCount);
当运行此代码时,输出结果为:
J
S
i
Uppercase characters: 2
什么导致这个输出?"JuSTin"中的'u' 'T'和'n'去哪了?为什么
upperCaseCount
等于2而不是3?
i++
,这会导致跳过字母。这似乎是一个笔误。 - Carcigenicate