1.题目描述:
请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
2.思路:
方法一:直接调用String类的自带replace()方法
public class Solution { public String replaceSpace(StringBuffer str) { return str.toString().replace(" ","%20"); } }
方法二:遍历
时间复杂度O(length),空间复杂度:O(1)
public class Solution { public String replaceSpace(StringBuffer str) { StringBuilder sb=new StringBuilder();//StringBuilder类比StringBuffer类更快 for(int i=0;i<str.length();i++){//遍历 char c=str.charAt(i);//一个个取出来 if(c==' '){ sb.append("%20");//用另一个String来存储 }else{ sb.append(c); } } return sb.toString(); } }