替换空格 (剑指Offer 第 2 题)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Fran_Lee/article/details/78181437

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

解题思路:
题目提示使用StringBuffer,的确使用StringBuffer比String要省事的多!StringBuffer相对于String主要用于对于字符串的变化(追加/插入/删除)等操作。此题,先拿到空格对应的第一个索引,然后删除该索引对应的值,然后在该索引处插入“%20”,最后只要一直循环下去,直到所有的空格都完成上述的操作即可。

Java代码实现:

public class Solution {
    public String replaceSpace(StringBuffer str) {
        if(str.length()==0)
            return "";

        while(true){
            int index = str.indexOf(" ");
            if(index == -1)
                break;
            str.deleteCharAt(index);
            str.insert(index, "%20");
        }
        return str.toString();
    }
}

End

展开阅读全文

没有更多推荐了,返回首页