迭代法
public class Solution {
public String replaceSpaces(String S, int length) {
// 数组长度为什么是3倍?整个字符串都是空格的情况
char[] charArr = new char[length * 3];
int index = 0;
for (int i = 0; i < length; i++) {
// 如果是空格,在数组中依次放入 %20 三个字符
if (S.charAt(i) == ' ') {
charArr[index ++] = '%';
charArr[index ++] = '2';
charArr[index ++] = '0';
} else {
charArr[index ++] = S.charAt(i);
}
}
return new String(charArr, 0, index);
}
}
直接调用替换字符串 api
class Solution {
public String replaceSpaces(String S, int length) {
if (S.length() == 0) return "";
return S.substring(0, length).replace(" ", "%20");
}
}