【发布时间】:2020-10-16 02:22:11
【问题描述】:
我正在学习 Java,我有以下方法可以更改字符串中的特定字母:
replaceLetter("The quick brown fox jumps over the lazy dog");
public static void replaceLetter(String string){
string = string.toLowerCase();
for (int i = 0; i < string.length(); i++){
if (string.charAt(i) == 'o'){
// System.out.println("inside if " + i);
// System.out.println("Char at " + string.charAt(i));
System.out.println(string.replace(string.charAt(i), '*'));
break;
}
// System.out.println("Outside if " + i);
}
}
我不明白为什么要一次更改所有字母“o”,而不是像我认为的那样一个一个地更改。循环在“if 语句”之外循环 12 次,然后进入语句内部并更改与大小写“o”匹配的所有字符。既然条件是“string.charAt(i)”,那不应该一一改变吗?它不应该改变匹配大小写的第一个字符然后跳出循环吗?
【问题讨论】:
标签: java string for-loop methods char