package offer;
/**
* 题目描述
* 请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
*/
public class Solution_02 {
/**
* 使用String的replace()方法
*/
public static String replaceSpace_01(StringBuffer str) {
return str.toString().replace(" ", "%20");
}
/**
* 将输入的StringBuffer转换为字符数组
* 创建新的StringBuffer对象
* 遍历字符数组
* 如果遇到空格就往StingBuffer对象中添加%20
* 否则直接添加该字符数组的字符即可
*/
public static String replaceSpace_02(StringBuffer str) {
char[] chars= str.toString().toCharArray();
StringBuffer sb = new StringBuffer();
for (int i = 0; i < chars.length; i++) {
if (chars[i]==' ') {
sb.append("%20");
}else {
sb.append(chars[i]);
}
}
return sb.toString();
}
/**
* 输出测试
*/
public static void main(String[] args) {
StringBuffer s = new StringBuffer("We Are Happy");
System.out.println(replaceSpace_01(s));
System.out.println(replaceSpace_02(s));
}
}