public static String replaceExclamation(String userText){ int i = 0; for ( i=0; i < userText.length(); ++i) { char currentChar = userText.charAt(i); if (currentChar == '!') { userText.charAt(i) = "."; } } return userText;}我正在尝试替换所有的“!” 在带有 '.' 的字符串中 但我收到了一个意外的类型错误。这是什么意思,我该如何解决?另外,userText 来自main而不是这个本地方法这一事实是否会影响我编辑字符串的能力?
1 回答
幕布斯7119047
TA贡献1794条经验 获得超8个赞
String是不可变的,如果你String用那个改变替换任何字符然后String创建新对象,所以我更喜欢使用StringBuilder这个
public static StringBuilder replaceExclamation(StringBuilder userText){
int i = 0;
for ( i=0; i < userText.length(); ++i) {
char currentChar = userText.charAt(i);
if (currentChar == '!') {
userText.setCharAt(i,'.');
}
}
return userText;
}
或者你可以使用replace(char oldChar, char newChar)
String result = userText.replace('!', '.');
或者你可以使用replaceAll(String regex, String replacement)
String result = userText.replaceAll("!", ".");
添加回答
举报
0/150
提交
取消