法一:
class Solution {
public String replaceSpace(String s) {
return s.replaceAll("\\s", "%20");
}
}
法二:
上次错误:不要忘了String类型需要先化成array形式再用for:for (Character c:s.toCharArray())。
在java中,字符串都被设计成不可变的类型,即无法直接修改字符串的某一位字符,需要新建一个字符串实现。
- 初始化一个StringBuilder,记为res.
- 遍历字符串s中的每个字符c:
c是空格时,向res后添加字符串“%20”;
c不是空格时,向res后添加字符c。 - 将res转化为String类型并返回。
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();
}