剑指 Offer 05. 替换空格
开辟新字符串
在java中,字符串是不可变类型,无法原地修改,所以需要开辟一个新的字符串,遍历原字符串,不是空格直接添加,如果是空格的话,直接添加“%20”
class Solution {
public String replaceSpace(String s) {
StringBuilder res = new StringBuilder();
for(Character c : s.toCharArray())
{
if(c == ' ') res.append("%20");
else res.append(c);
}
return res.toString();
}
}
原地替换
在c++中字符串是可变的,所以可以原地替换
还有一种办法是双指针,以前遇到过,但是忘了是那一道题,以后遇到在回来
toCharArray() 方法将字符串转换为字符数组