相关疑难解决方法(0)

编写一个方法来用'%20'替换字符串中的所有空格

我对Gayl Laakmann McDowell第5版Cracking The Code Interview一书中的编程问题提出了疑问.

问题所在:写一个方法用'%20'替换字符串中的所有空格.假设字符串在字符串末尾有足够的空间来容纳其他字符,并且您获得了字符串的真实长度.我使用书籍代码,使用字符数组在Java中实现解决方案(鉴于Java字符串是不可变的):

public class Test {
    public void replaceSpaces(char[] str, int length) {
        int spaceCount = 0, newLength = 0, i = 0;

        for(i = 0; i < length; i++) {
            if (str[i] == ' ') 
                spaceCount++;
        }

        newLength = length + (spaceCount * 2);
        str[newLength] = '\0';
        for(i = length - 1; i >= 0; i--) {
            if (str[i] == ' ') {
                str[newLength - 1] = '0';
                str[newLength - 2] = '2';
                str[newLength …
Run Code Online (Sandbox Code Playgroud)

java arrays char

13
推荐指数
3
解决办法
3万
查看次数

标签 统计

arrays ×1

char ×1

java ×1