请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
有点简单,哈哈。
方法一,直接点用系统方法replace(); 源码也是使用StringBuilder进行拼接
public String replaceSpace(StringBuffer str) {
return str.toString().replace(" ", "%20");
}
方法二,调用charAt()遍历,是空格拼接%20,不是直接拼接原字符。
public class Solution {
public String replaceSpace(StringBuffer str) {
StringBuilder builder = new StringBuilder();
for(int i =0; i<str.length();i++){
char tem = str.charAt(i);
if(tem==' '){
builder.append("%20");
}else{
builder.append(tem);
}
}
return builder.toString();
}
}
两种方法:时间复杂度:O(n)
空间复杂度:O(1)
练习地址:https://www.nowcoder.com/practice/4060ac7e3e404ad1a894ef3e17650423