一、题目描述

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

示例 1:

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

限制:

  • 0 <= s 的长度 <= 10000

二、保姆级参考代码

// 登录 AlgoMooc 官网获取更多算法图解
// https://www.algomooc.com
// 作者:程序员吴师兄
class Solution {
    public String replaceSpace(String s) {

        // StringBuilder 类的对象能够被多次的修改,并且不产生新的未使用对象
        // 由于 StringBuilder 相较于 StringBuffer 有速度优势,所以多数情况下建议使用 StringBuilder 类
        StringBuilder res = new StringBuilder();

        // 利用方法 toCharArray 将字符串 s 转换成一个新的字符数组
        // 获取这个字符数组中的每个字符
        for(Character c : s.toCharArray()){

            // 1、如果发现该字符为空格,即 ' '
            if(c == ' ') {
                // 那么在 res 中添加 %20
                res.append("%20");

            // 2、否则,如果发现该字符不是空格
            }else{
                // 那么在 res 中原字符
                res.append(c);
            }

        }

        // 最后把字符串返回
        return res.toString();
    }
}

三、视频讲解