劍指offer[替換空格]
阿新 • • 發佈:2018-11-24
劍指offer[替換空格]
題目描述
請實現一個函式,將一個字串中的每個空格替換成“%20”。例如,當字串為We Are Happy.則經過替換之後的字串為We%20Are%20Happy。
思路
因為原題給的引數是Stringbuffer,所以可以利用Stringbuffer的indexof方法得到字串中空格的索引,然後用replace方法替代。
程式碼
public class Solution {
public String replaceSpace (StringBuffer str) {
int index=str.indexOf(" ");
while(index!=-1){
str.replace(index,(index+1),"%20");
index=str.indexOf(" ");
}
return str.toString();
}
}
細節知識
- 字串的索引是從0開始的
- StringBuffer的replace方法三個引數分別是起始位置,結束位置,需要替代的字串
- indexof方法如果找不到指定字元的索引就會返回-1