1.4

题目描述
请编写一个方法,将字符串中的空格全部替换为“%20”。假定该字符串有足够的空间存放新增的字符,并且知道字符串的真实长度(小于等于1000),同时保证字符串由大小写的英文字母组成。
给定一个string iniString 为原始的串,以及串的长度 int len, 返回替换后的string。
测试样例:
"Mr John Smith”,13
返回:"Mr%20John%20Smith"

”Hello World”,12
返回:”Hello%20%20World”

public class Replacement {
//    请编写一个方法,将字符串中的空格全部替换为“%20”。假定该字符串有足够的空间存放新增的字符,并且知道字符串的真实长度(小于等于1000),同时保证字符串由大小写的英文字母组成。
//    给定一个string iniString 为原始的串,以及串的长度 int len, 返回替换后的string。
//    测试样例:
//            "Mr John Smith”,13
//    返回:"Mr%20John%20Smith"
//
//            ”Hello  World”,12
//    返回:”Hello%20%20World”
public String replaceSpace(String iniString, int length) {
    // write code here
    iniString="1 "+iniString+" 1";
    String[] stringArray=iniString.split(" ");
    String returnString="";
    for(int i=1;i<stringArray.length-2;i++){
        returnString+=stringArray[i]+"%20";
    }
    return returnString+stringArray[stringArray.length-2];
}
public static void main(String[] args){
    String ni="Mr John  Smith";
    System.out.println(new Replacement().replaceSpace(ni,ni.length()));
}
}

这里有个小坑,开头和结尾如果是空格我一开始没有考虑到,所以就没有达到100%的测试

大神们的链接:

https://www.nowcoder.com/questionTerminal/b0850698cb41449188344cdb647f3e99

看了一个答案发现我自己写的太愚蠢了。。


image.png

推荐阅读更多精彩内容