【剑指Offer】5.替换空格

题目

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

示例 1:

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

限制:

0 <= s 的长度 <= 10000

解答

源代码

class Solution {
    public String replaceSpace(String s) {
        StringBuilder str = new StringBuilder();

        for (char ch : s.toCharArray()) {
            if (ch == ' ') {
                str.append("%20");
            } else {
                str.append(ch);
            }
        }

        return str.toString();
    }
}

总结

因为String类型字符串是可不变的,所以我们用StringBuilder类型字符串来记录结果。把字符串s转换为字符数组遍历,遇到空格则添加“%20”,遇到字符则添加该字符。最终将StringBuilder转换为String类型并返回。

你可能感兴趣的:(剑指Offer,java,leetcode,算法)