1 public String replaceSpace(StringBuffer str) {  2 // 1、如果输入的字符串为空,则返回空字符串,如果返回null,牛客网通不过  3 // 2、如果输入的字符串的内容为空,则返回空字符串  4 if (str == null || str.length() == 0) {  5 return "";  6  }  7 int count = 0;//统计空格数目  8 int length = str.length();  9 // 循环用来统计空格数目 10 for (int i = 0; i < length; i++) { 11 if (str.charAt(i) == ' ') { 12 count++; 13  } 14  } 15 // 新的字符个数=原来字符串长度+2倍的空格数目 16 char[] ch = new char[length + 2 * count]; 17 // i表示指向str的指针,j表示指向ch的指针 18 for (int i = 0, j = 0; i < length && j < ch.length; ) { 19 // 如果i指向空格,则把j指向的内容替换为'%','2','0',执行完,j指向下一个 20 if (str.charAt(i) == ' ') { 21 ch[j++] = '%'; 22 ch[j++] = '2'; 23 ch[j++] = '0'; 24 } else { 25 // 如果i指向的不是空格,则把j指向的内容替换为i指向的内容,执行完,j指向下一个 26 ch[j++] = str.charAt(i); 27  } 28 // i指向下一个 29 i++; 30  } 31 // 把字符数组转换成字符串 32 return String.valueOf(ch); 33 }

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。