1. 程式人生 > >替換空格---總結String StringBuffer StringBuilder

替換空格---總結String StringBuffer StringBuilder

請實現一個函式,將一個字串中的每個空格替換成“%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)

 

總結 一下上述三種類型。