请实现一个函数,把字符串 s
中的每个空格替换成"%20"。
如果使用String.split()方法,会产生无法通过测试用例2 “ ” 的情况。
通过编写测试样例研究,发现在split()方法中,
“ 1”将会分为两个部分,即null + “1”
“1 ”将会分为一个部分,即1
“ ”将会分为0个部分
所以如果后者字符串为null,则后者字符串不会被分出来;若前者字符串为null且后者字符串不为null,则后者字符串和前者字符串都会被分离出来。
因此,在本题中,可以采用
- tocharArray方法先将字符串转化为字符数组形式,再将字符依次加入到临时字符串中,遇到“ ”则加入“%20”字符串;(String字符串无法做修改动作,用StringBuffer)
- 直接调用String.replace()方法替换