请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
思路:从左向右遍历当前字符串中字符,若该字符为空格,则替换为"%20",更新当前字符串长度,计算下一个遍历位置。
注意:我们遍历的对象是更新后的当前字符串,每次更新后,要更新相关变量。
代码如下:
public
class
Solution {
public
String replaceSpace(StringBuffer str) {
int
length = str.length();
String replaceStr =
"%20"
;
for
(
int
i =
0
; i < str.length(); ){
if
(str.charAt(i) ==
' '
){
str.replace(i, i+
1
, replaceStr);
i = i+
3
;
}
else
{
i= i+
1
;
}
}
return
str.toString();
}
}