题目
请实现一个函数,把字符串中的每个空格替换成"%20"
。
数据范围
0≤0≤ 输入字符串的长度 ≤1000≤1000。
注意输出字符串的长度可能大于 10001000。
样例
输入:"We are happy."输出:"We%20are%20happy."
解法一:先把StringBuffer转为String类型,然后再转为字符数组进行遍历,用一个新的空字符串记录结果,不断追加遍历到的字符
class Solution {public String replaceSpaces(StringBuffer str) {String str1 = str.toString();char[] c = str1.toCharArray();String res = "";for(int i =0 ;i<c.length;i++){if(c[i] != ' ')res +=c[i];else res += "%20";}return res;}
}
解法二:上述方法代码太过冗余,优化为下列方法
class Solution {public String replaceSpaces(StringBuffer str) {String res = "";for(int i =0 ;i<str.length();i++){if(str.charAt(i) != ' ')res +=str.charAt(i);else res += "%20";}return res;}
}