专业的JAVA编程教程与资源

网站首页 > java教程 正文

剑指Offer-JZ2:替换空格(剑指offerjava版本)

temp10 2024-10-09 20:39:05 java教程 14 ℃ 0 评论

题目描述


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

思路分析

1.直接替换法:使用java自带函数实现空格替换为“%20”;

剑指Offer-JZ2:替换空格(剑指offerjava版本)

2.新数组实现:原字符串作为辅助串,将替换结果存放至新数组中。

题解实现

方法一:直接替换法

public class Solution {
    public String replaceSpace(StringBuffer str) {
    	if(str == null) {
            return "" ;
        }
        return str.toString().replace(" ", "%20") ;
    }
}

方法二:新数组实现

public class Solution {
    public String replaceSpace(StringBuffer str) {
        if(str == null) return "" ;
    		StringBuilder sb = new StringBuilder(str.length()) ;
        char c ;
        String replacer = "%20" ;
        for(int i=0; i<str.length(); i++) {
            if((c=str.charAt(i)) == ' ') {
                sb.append(replacer) ;
            } else {
                sb.append(c) ;
            }
        }
        return sb.toString() ;
    }
}

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表