剑指Offer2 - 替换空格
2020-06-02 06:17
148 查看
题目描述
请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
解题思路
题目意思很明显,将字符串的空格替换成“%20”,因为 Java 对于 String 提供了 replace 函数,所以将 StringBuffer 转换为 String 类型再调用对应的 replaceAll 就可以很好的解决这个问题。
当然在这里提供另一种普通的做法,因为提供的参数是 StringBuffer 类型,很明显我们可以利用它的 append 方法,我们遍历一遍 str,如果不是空格就 append 对应的字符到 ans 中,否则就append “%20”,最后转化为 String 类型返回出去即可。
代码实现
import java.util.Scanner; public class Problem2 { public static String replaceSpace(StringBuffer str) { String ans = str.toString().replaceAll(" ", "%20"); return ans; } public static String replaceSpace2(StringBuffer str) { int len = str.length(); StringBuffer ans = new StringBuffer(); for (int i = 0; i < len; i ++) { if (str.charAt(i) == ' ') { ans.append("%20"); } else { ans.append(str.charAt(i)); } } return ans.toString(); } public static void main(String[] args) { Scanner cin = new Scanner(System.in); String s = cin.nextLine(); StringBuffer str = new StringBuffer(s); String ans = replaceSpace(str); System.out.println(ans); } }
相关文章推荐
- 替换空格
- 字符串空格替换
- 替换空格
- 字符串中的空格替换
- 剑指offer思路回顾 字符串替换空格
- 《剑指offer》替换空格
- 将字符串中的空格用逗号替换
- 替换连续空格为一空格的三种方法
- 剑指offer中替换空格为"%20"
- 替换空格
- 每日一题(2) - 替换空格
- 实现一个函数,将一个字符串中的空格替换成“ % 20”
- [剑指offer]替换空格
- C# UrlDecode将+替换为空格问题
- 剑指Offer面试题4[替换空格]
- java 剑指offer 第二题:请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
- java 把字符串中所有的空格替换为%20 及扩展
- 替换空格
- 剑指Offer-【面试题04:替换空格】
- 《剑指offer》牛客网java题解-替换空格