描述:
请实现一个函数,把字符串 s 中的每个空格替换成"%20"。
实例
输入:s = “We are happy.”
输出:“We%20are%20happy.”
思路:
- 先将字符串转换为字符数组
- 循环读取并判断是否遇到空格
- 若遇到了则追加%20到新的StringBuilder变量
- 若没有遇到,则同样把当前读取的内容追加到StringBuilder变量里。
class Solution {
private static final String REPLACE_SPACE_VALUE = "%20";
public String replaceSpace(String s) {
StringBuilder builder = new StringBuilder();
char[] ch = s.toCharArray();
for (char c : ch) {
if (c == ' ') {
builder.append(REPLACE_SPACE_VALUE);
} else {
builder.append(c);
}
}
return builder.toString();
}
}
注:
- StringBuilder类代表可变字符串对象,其内部已经重写了toString方法
- append方法代表追加
- char类型都用单引号’ ’
- String类型转为char类型数组使用toCharArray方法
- char类型(包括数组)转为String使用valueOf方法