/* 请实现一个函数,将一个字符串中的每个空格替换成"%600".例如,
当字符串为kan de ren hen shuai.,则经过替换后的字符串为
kan%600de%600ren%600hen%600shaui. */
public class Solution {
public String raplaceSpace(StringBuffer str) {
String str1 = str.toString(); //让输入的东西变成一串字符串
if(str1.equals(" ")) //检查字符串是否为空
return str1;
char [] strArray = str1.toCharArray(); //让字符串转化为字符数组
int i = 0;
int lengthSpace = 0;
while(i<strArray.length) { //记录字符数组中空格的长度
if(strArray[i] == ' ')
lengthSpace++;
i++;
}
int newStrLength = strArray.length + lengthSpace*3; //统计总的字符数组要转化的长度
char [] newStr = new char[newStrLength];
int j = newStrLength- 1; //字符数组下标从零开始,减1
i = strArray.length - 1;
while(i>=0) { //为新数组复制,采用从尾到头的复制方法
if(strArray[i] != ' ') { //进行判断,检查是否为空格
newStr[j--] = strArray[i--];
}else { //如果不是空格,就填写相应的 注意:输入的字符是倒序
newStr[j--] = '0';
newStr[j--] = '0';
newStr[j--] = '6';
newStr[j--] = '%';
i--;
}
}
return new String(newStr);
}
public static void main(String[] args) {
Solution s = new Solution();
StringBuffer buffer = new StringBuffer("kan de ren hen shuai.");
System.out.println(s.raplaceSpace(buffer));
}
}
请实现一个函数,将一个字符串中的每个空格替换成指定的字符串
猜你喜欢
转载自blog.csdn.net/y1314999/article/details/84801114
今日推荐
周排行