题目描述
请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy

思路分析
1.直接替换法:使用java自带函数实现空格替换为“%20”;
2.新数组实现:原字符串作为辅助串,将替换结果存放至新数组中。
题解实现
方法一:直接替换法
public class Solution {
public String replaceSpace(StringBuffer str) {
if(str == null) {
return "" ;
}
return str.toString().replace(" ", "%20") ;
}
}
方法二:新数组实现
public class Solution {
public String replaceSpace(StringBuffer str) {
if(str == null) return "" ;
StringBuilder sb = new StringBuilder(str.length()) ;
char c ;
String replacer = "%20" ;
for(int i=0; i<str.length(); i++) {
if((c=str.charAt(i)) == ' ') {
sb.append(replacer) ;
} else {
sb.append(c) ;
}
}
return sb.toString() ;
}
}