迭代法
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"); }}