题目描述:
请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如, 当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy
public class ReplaceSpace {
public static void main(String[] args) {
StringBuffer str=new StringBuffer("hello world");
String dst=replaceSpace1(str);
System.out.println(dst);
}
//1.直接利用String类里边的replace
public static String replaceSpace0(StringBuffer str){
String s1=str.toString();
String s2=s1.replace(" ","%20");
return s2;
}
//2.利用StringBuffer的append 和 String 的toString()方法,
// 遍历字符串,将空格替换成“%20”
public static String replaceSpace1(StringBuffer str){
String str1=str.toString();
StringBuffer dst=new StringBuffer();
for(int i=0;i<str1.length();i++){
if(str1.charAt(i)!=' '){
dst.append(str1.charAt(i));
}else{
dst.append("%20");
}
}
return dst.toString();
}
//类似于方法二
public static String replaceSpace2(StringBuffer str){
String strs=str.toString();
char[] chars=strs.toCharArray();
StringBuffer dst=new StringBuffer();
for(int i=0;i<chars.length;i++){
if(chars[i]!=' '){
dst.append(chars[i]);
}else {
dst.append("%20");
}
}
return dst.toString();
}
}
运行结果: