使用replace
从字符串左边开始,每次比较在i处的字符是不是' ',如果是用"%20"替换。注意此时str的长度和i将会发生变化。
public class Solution {
public String replaceSpace(StringBuffer str) {
int n=str.length();
for(int i=0;i<n;i++){
if(str.charAt(i)==' '){
str.replace(i, i+1, "%20");
i=i+2;
n=n+2;
}
}
String s=""+str;
return s;
}
}