替换空格

题目

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

解题

方法一:正则

public class Solution {
    public String replaceSpace(StringBuffer str) {
        return str.toString().replaceAll("\\s","%20");    
    }
}

方法二:
找到空格后替换成: %20 ,这里用StringBuffer存储

public class Solution {
    public String replaceSpace(StringBuffer str) {
        int len = str.length();
        StringBuffer sb = new StringBuffer();
        for(int i=0;i<len;i++){
            char ch = str.charAt(i);
            if(ch == ' '){
                sb.append("%20");
            }else{
                sb.append(ch);
            }
        }
        return sb.toString();
    }
}

方法三:当给的输入是一个字符串数组时候
(1)返回字符串

public class Solution {
    public String replaceSpace(StringBuffer str) {
        int len = str.length();
        char[] A = str.toString().toCharArray();
        StringBuffer sb = new StringBuffer();
        for(int i=0;i<len;i++){
            if(A[i] == ' '){
                sb.append("%20");
            }else{
                sb.append(A[i]);
            }
        }
        return sb.toString();
    }
}

你可能感兴趣的:(剑指offer)