请实现一个函数,把字符串 s 中的每个空格替换成"%20"。
示例 1: 输入:s = "We are happy." 输出:"We%20are%20happy."
//使用一个新的对象,复制 str,复制的过程对其判断,是空格则替换,否则直接复制,类似于数组复制
class Solution {
public String replaceSpace(String s) {
if(s==null){
return null;
}
//选用 StringBuilder 单线程使用,比较快,选不选都行
StringBuilder str = new StringBuilder();
//使用 sb 逐个复制 str ,碰到空格则替换,否则直接复制
for(int i=0;i<s.length();i++){
//str.charAt(i) 为 char 类型,为了比较需要将其转为和 " " 相同的字符串类型
if(" ".equals(String.valueOf(s.charAt(i)))){
str.append("%20");
}else{
str.append(s.charAt (i));
}
}
return str.toString();
}
}