
替换空格
请实现一个函数,把字符串中的每个空格替换成”%20”。例如,输入 “We are happy.”,则输出 “We%20are%20happy.”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
public static String (String string) { StringBuilder str = new StringBuilder(); str.append(string); if (str.length() <= 0) { return string; } int originalLength = str.length(); int numberOfBlank = 0; for (int i = 0; i < originalLength; i++) { if (str.charAt(i) == ' ') { numberOfBlank++; } } int newLength = originalLength + 2 * numberOfBlank; str.setLength(newLength); int indexOfOriginal = originalLength - 1; int indexOfNew = newLength - 1; while (indexOfOriginal >= 0 && indexOfNew > indexOfOriginal) { if (str.charAt(indexOfOriginal) == ' ') { str.setCharAt(indexOfNew--, '0'); str.setCharAt(indexOfNew--, '2'); str.setCharAt(indexOfNew--, '%'); } else { str.setCharAt(indexOfNew--, str.charAt(indexOfOriginal)); } --indexOfOriginal; } return str.toString(); }
|
近期评论