public class Solution { //关键还是要熟悉字符串中的类String、StringBuffer
public String replaceSpace(StringBuffer str) {
int cnt=0; //计算空格数
for(int i=0;i<=str.length()-1;i++)
{
if(str.charAt(i)==' ')
{
cnt++;
}
}
int len=str.length()+2*cnt; //计算转换之后的长度
int i=str.length()-1; //转换之前的长度
int j=len-1; //转换之后的下标
str.setLength(len); //str扩大之后的长度,防止下标越界
for(;i>=0&&i<len;--i) //不要i<len也行
{
if(str.charAt(i)!=' ')
{
str.setCharAt(j--,str.charAt(i));
}
else
{
str.setCharAt(j--,'0');
str.setCharAt(j--,'2');
str.setCharAt(j--,'%');
//--i;
}
}
return str.toString(); //将StringBuffer对象转化成String对象
}
}