(替换空格)题目描述:
请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
解决办法一:利用replace函数
将str转为字符串后调用replace方法,将空格转为“%20”即可。需要注意的是replace方法调用的结果是返回值类型为String的结果而非void。
public class Solution { public String replaceSpace(StringBuffer str) { return str.toString().replace(" ", "%20"); } }
解决办法二:利用StringBuilder来判断并append一个新的结果
char index = str.charAt(i);利用这个方法来遍历str的每一个字符并用一个新的sbuilder来接收每一个字符,遇到空格就在后面append"%20",最后返回sbuilder.toString();
public class Solution { public String replaceSpace(StringBuffer str) { StringBuilder sbuilder = new StringBuilder(); for(int i=0;i<str.length();i++){ char index = str.charAt(i); if(index == ' '){ sbuilder.append("%20"); }else{ sbuilder.append(index); } } return sbuilder.toString(); } }