LeetCode–替换空格


题目

请实现一个函数,把字符串 s 中的每个空格替换成"%20"。

示例 1

输入:s = "We are happy."
输出:"We%20are%20happy."

限制

0 <= s 的长度 <= 10000

Java

思路

字符串是不可以改变的,只能新建一个字符串,由空格变为%20,是从一个字符到了三个字符,在初始化数组的时候需要把长度加大

代码
class Solution {
    public String replaceSpace(String s) {
        int length = s.length();
        char[] array = new char[length*3];
        int len = 0;
        for(int i = 0; i < length; i++){
            char c = s.charAt(i);
            if(c == ' '){
                array[len++] = '%';
                array[len++] = '2';
                array[len++] = '0';
            }else{
                array[len++] = c;
            }
        }
        String res = new String(array,0,len);
        return res;
    }
}


原文链接:https://www.cnblogs.com/guizimo/p/13456736.html