题目:请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
方法一:遍历字符串,找到空格就替换
代码如下:
1 public class Solution { 2 public String replaceSpace(StringBuffer str) { 3 for (int i = 0; i < str.length(); i++) 4 { 5 if(str.charAt(i)==' ') 6 str.replace(i, i+1, "%20"); 7 8 } 9 return str.toString(); 10 } 11 }
方法二:直接使用String的replaceAll方法
代码如下:
1 public class Solution { 2 public String replaceSpace(StringBuffer str) { 3 return str.toString().replaceAll(" ", "%20"); 4 } 5 }
方法三:用新的StringBuilder来存
代码如下:
1 public class Solution { 2 public String replaceSpace(StringBuffer str) { 3 StringBuilder sb = new StringBuilder(); 4 for (int i = 0; i < str.length(); i++) 5 { 6 if(str.charAt(i)==' ') 7 { 8 sb.append("%20"); 9 } 10 else 11 { 12 sb.append(str.charAt(i)); 13 } 14 } 15 return sb.toString(); 16 } 17 }