【剑指offer】替换空格
替换空格
http://www.nowcoder.com/questionTerminal/4060ac7e3e404ad1a894ef3e17650423
题目描述
请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
思路与代码
一开始想用split函数将原字符串进行分割,再遍历添加,后面发现直接遍历也很简单,就用暴力法做了。做的过程中又复习了一遍字符串的基本操作,例如由于字符串只能读取,不能进行增删改的操作,所以我们需要先使用StringBuilder或是StringBuilder来盛放,最后再利用toString()进行转换。还要注意空格的书写是' ',而不是单纯两个单引号。贴上代码:
public class Solution { public String replaceSpace(StringBuffer str) { if(str == null) return null; StringBuilder ans = new StringBuilder(); for(int i = 0; i < str.length(); i++) { if(str.charAt(i) == ' ') { ans.append('%'); ans.append('2'); ans.append('0'); } else { ans.append(str.charAt(i)); } } return ans.toString(); } }