难度系数 ⭐⭐【难在一开始不知道StringBuffer的使用】
时间限制 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
题目内容 请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
思路 设置一个新字符串A,遍历给定字符串B,若B中当前字符为空格则往A添加“%20”,否则将当前字符加到A中。
package nowcoder;
public class No3 {
public static String replaceSpace(StringBuffer str) {
String s = "";
for (int i = 0; i < str.length(); i++) {
if (str.charAt(i) == ' ') s += "%20";
else s = s + str.charAt(i);
}
return s;
}
public static void main(String[] args) {
StringBuffer s = new StringBuffer();
s.append("Hello ");
s.append(" word ");
System.out.println(replaceSpace(s));
}
}