美文网首页
《剑指offer》(二)-替换空格(java)

《剑指offer》(二)-替换空格(java)

作者: 鼠小倩 | 来源:发表于2019-09-29 13:25 被阅读0次

    题目描述

    请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。

    代码格式要求

    public class Solution {
        public boolean Find(int target, int [][] array) {
        }
    }
    

    解题

    解法一、java自带的函数

    public class Solution {
        public static String replaceSpace(StringBuffer str) {  
            return str.toString().replace(" ", "%20");      
        }
        public static void main(String[] args) {
           StringBuffer str =new StringBuffer().append("We Are Happy");
           System.out.println(replaceSpace(str));//打印输出
        }
    }
    

    当对字符串进行修改的时候,需要使用 StringBuffer 和 StringBuilder 类。
    toString() 方法返回此对象本身。

    解法二、直接在字符串上进行替换

    public class Solution {
        public static String replaceSpace(StringBuffer str) {
            int n = str.length(); //定义字符串的长度
                for(int i=0; i<n; i++) {
                if(str.charAt(i) == ' ') { 
                   n += 2;  //对字符串进行扩容
                   str.replace(i, i+1, "%20");       
                 }
            }
            return str.toString();  
        }
        public static void main(String[] args) {
           StringBuffer str =new StringBuffer().append("We Are Happy");
           System.out.println(replaceSpace(str));//打印输出
        }
    }
    

    char charAt(int index),返回此序列中指定索引处的 char 值。
    replace(int start, int end, String str),使用给定 String 中的字符替换此序列的子字符串中的字符。

    相关文章

      网友评论

          本文标题:《剑指offer》(二)-替换空格(java)

          本文链接:https://www.haomeiwen.com/subject/jpjcpctx.html