总结:先计算出总共有多少空格,count++;然后从后往前遍历,每遇到一个空格,count--;
替换空格
- 参与人数:2119时间限制:1秒空间限制:32768K
- 通过比例:20.23%
- 最佳记录:0 ms|8552K(来自 牛客游客)
题目描述
请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
完整代码:
public class StringreplaceSpace { public static void main(String[] args){ StringBuffer str=new StringBuffer("We Are Happy"); System.out.println(replaceSpace(str)); } public static String replaceSpace(StringBuffer str) { int count=0; for(int i=0;i<str.length();i++){ if(str.charAt(i)==' '){ count++; } } char str2[] = new char[str.length()+count*2]; for(int j=str.length()-1;j>=0;j--){ char temp = str.charAt(j); if(temp!=' '){ str2[j+2*count] =temp; } else{ str2[j+2*count]='0'; str2[j+2*count-1]='2'; str2[j+2*count-2]='%'; count--; } } StringBuffer str3=new StringBuffer(); for(int k=0;k<str2.length;k++){ str3.append(str2[k]); } return str3.toString(); } }