题目链接:替换空格
因为在Java中String是不可变的,所以Offer书本上的原地扩容机制并不合适。利用可变的字符串类型StringBuilder遍历一遍并存储结果即可。
class Solution {
public String replaceSpace(String s) {
if(s == null || s.length() == 0) return s;
StringBuilder res = new StringBuilder();
for(int i = 0; i < s.length(); i ++){
char c = s.charAt(i);
if(c == ' '){ //遇到空格就替换
res.append("%20");
}
else res.append(c); //不是空格直接抄下来
}
return res.toString();
}
}