题目:请实现一个函数,把字符串中的每个空格替换成%20。例如,输入“we are happy”,则输出“we%20are%20happy"
public class Test { public static void main(String[] args) { long startTime = System.currentTimeMillis(); String str = "We are happy"; System.out.println(transform(str)); long endTime = System.currentTimeMillis() - startTime; System.out.println(endTime); } //使用StringBuilder的repalce方法 private static String transform(String str) { String replaceStr = "%20"; int length = str.length(); StringBuilder builder = new StringBuilder(str); for (int i = 0; i < length; i++) { if (' ' == builder.charAt(i)) { builder.replace(i, i + 1, replaceStr); length = length+replaceStr.length() - 1; } } return builder.toString(); } }
假设我们不使用StringBuilder的Replace方法:
private static String transform(StringBuilder str) {
return str.toString().replaceAll("\\s", "%22");
}