Java实现替换空格

如题所示:请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy.

这是第一种方法
public class ReplaceChar {
/**
* @param args
 */
public static void main(String[] args) {
StringBuffer str = new StringBuffer("we are happy");
System.out.println(replaceSpace(str));
}
public static String replaceSpace(StringBuffer str) {
return str.toString().replaceAll(" ","%20");//将空格换成%20
}
}
这是第二种方法

public static String replaceSpace(StringBuffer str) {
int n=0;
while(str.indexOf(" ",n)!=-1){
n=str.indexOf(" ",n);//获得空格的索引
str.deleteCharAt(n);//删除对应索引的空格
str.insert(n,"%20");//在相应位置插入%20
n=n+2;//更新n值,运行第一次str结果为we%20are happy,运行第二次结果str为we%20are%20happy。
}
return str.toString();
}
public static void main(String[] args) {
StringBuffer str = new StringBuffer("we are happy");
System.out.println(replaceSpace(str));
}

你可能感兴趣的:(算法,替换空格)