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
| public class Solution { public String replaceSpace(StringBuffer str) { int spaceNum = 0; for (int i = 0; i < str.length(); i++) { if(str.charAt(i) == ' '){ spaceNum++; } } int indexOld = str.length()-1; str.setLength(str.length()+spaceNum*2); int indexNew = str.length()-1; while (indexNew != indexOld) { if(str.charAt(indexOld) == ' '){ str.setCharAt(indexNew--, '0'); str.setCharAt(indexNew--, '2'); str.setCharAt(indexNew--, '%'); }else{ str.setCharAt(indexNew--, str.charAt(indexOld)); } indexOld--; } return str.toString(); } }
|