1. 程式人生 > >請實現一個函數,將一個字符串中的每個空格替換成“%20”。例如,當字符串為We Are Happy.則經過替換之後的字符串為We%20Are%20Happy

請實現一個函數,將一個字符串中的每個空格替換成“%20”。例如,當字符串為We Are Happy.則經過替換之後的字符串為We%20Are%20Happy

i++ java ret char != pen 檢測 length number

方法一: public String replaceSpace(StringBuffer str) { if(str==null){ return null; } StringBuilder newStr = new StringBuilder(); for(int i=0;i<str.length();i++){ if(str.charAt(i)==‘ ‘){ newStr.append(‘%‘); newStr.append(
‘2‘); newStr.append(‘0‘); }else{ newStr.append(str.charAt(i)); } } return newStr.toString(); } 方法二:

public String replaceSpace(StringBuffer str) {
int index =str.indexOf(" ");
while(index!=-1){
str.replace(index,index+1,"%20");
index=str.indexOf(" ",index);
}
return str.toString();
}

方法三:

public String replaceSpace(StringBuffer str) {
int n = str.length();//字符串的長度
int ii = 0;//空格的個數ii
for(int i = 0;i < n;i++){
//檢測空格
if(str.charAt(i)==‘ ‘){
ii++;
}
}

int nn = 2 * ii + n;//根據空格的個數,得到新數組的長度
int index = nn -1;
char[] ct = new char[nn];//新建數組
while(n > 0){
if(str.charAt(n - 1) != ‘ ‘){
//如果不是空格
ct[index--] = str.charAt(n-1);
}
else{
//如果是空格
ct[index--] = ‘0‘;
ct[index--] = ‘2‘;
ct[index--] = ‘%‘;
}
//取下一個字符
n--;
}
return String.valueOf(ct);

}

請實現一個函數,將一個字符串中的每個空格替換成“%20”。例如,當字符串為We Are Happy.則經過替換之後的字符串為We%20Are%20Happy