题解 | #替换空格#

替换空格

http://www.nowcoder.com/practice/0e26e5551f2b489b9f58bc83aa4b6c68

第一种方法最简单也最骚,直接用string的api即可。
    public String replaceSpace (String s) {
        // write code here
        return s.replaceAll(" ", "%20");
    }
第二种方法就是遍历每个下标,然后将其添加到新的数组中。
    public String replaceSpace (String s) {
        // write code here
        char sc[] = s.toCharArray();
        //因为空格要换成%20,所以要申请新的3倍char数组
        char dp[] = new char[sc.length * 3];
        int index = 0;
        
        for(int i = 0; i < sc.length; i++){
            if(sc[i] == ' '){
                dp[index++] = '%';
                dp[index++] = '2';
                dp[index++] = '0';
            }else{
                dp[index++] = sc[i];
            }
        }
        
        return new String(dp, 0, index);
    }
第三种方法和第二种思路一样,只不过不申请3倍容量数组,而是使用springBuilder拼接。
    public String replaceSpace (String s) {
        // write code here
        char sc[] = s.toCharArray();
        StringBuilder sb = new StringBuilder();
        
        for(int i = 0; i < sc.length; i++){
            if(sc[i] == ' '){
                sb.append("%20");
            }else{
                sb.append(sc[i]);
            }
        }
        
        return sb.toString();
    }


全部评论

相关推荐

粗心的熊熊求求offer:什么内容都没有还弄两页
点赞 评论 收藏
分享
那一天的Java_Java起来:他本来公司就是做这个的,不就是正常的游戏客户端和服务器开发,软硬件联动,有啥恶心不恶心的,提前告诉你就是怕你接受不了,接受不了就没必要再往后走流程浪费时间,虽然这公司是一坨。
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
06-27 15:19
简历上能写3个月吗?
码农索隆:大胆写,主要你能把实习经历包装好,可以看一下我这篇帖子https://www.nowcoder.com/share/jump/4888395581180798063
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务