替換空格---總結String StringBuffer StringBuilder
阿新 • • 發佈:2018-12-07
請實現一個函式,將一個字串中的每個空格替換成“%20”。例如,當字串為We Are Happy.則經過替換之後的字串為We%20Are%20Happy。
方法一 :使用String 的replace 方法
public static String replaceSpace(String str) {
return str.replace(" ", "%20");
}
因為此題規定傳入的是stringBuffer 型別的資料 ,因此此方法行不通。
方法二:將 StringBuffer先轉換成String 再使用上述方法
public static String replaceSpace(String str) { return str.replace(" ", "%20"); }
方法三:StringBuffer>String>Char[] 通過陣列進行遍歷,然後存放於StringBuilder資料中。
public String replaceSpace1(StringBuffer str) { char[] c=str.toString().toCharArray();//stringBuffer>String>char[] StringBuilder sb=new StringBuilder(); for(char i=0;i<c.length;i++){ if(c[i]==' '){ sb.append("%20"); }else{ sb.append(c[i]); } } return sb.toString(); }
字元陣列的遍歷還可以是for(char i :c)
總結 一下上述三種類型。