ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

算法 字符串 替换空格

2022-01-02 17:58:34  阅读:104  来源: 互联网

标签:String ++ length 空格 int 算法 字符串 array size


字符串替换空格

在这里插入图片描述

replaceAll()

class Solution {
    public String replaceSpace(String s) {
    	return s.replaceAll(" ", "%20");
	}
}

StringBuilder

  1. 创建StringBuilder
  2. 循环遍历字符串
    • 字符为 ‘ ’(空格),使用append(),添加”%20“
    • 字符不为空格,使用append(), 添加原字符
class Solution {
    public String replaceSpace(String s) {
        StringBuilder s2 = new StringBuilder();
        for(int i = 0; i < s.length(); i++){
            char c = s.charAt(i);
            if (c == ' '){
                s2.append("%20");
            } else {
                s2.append(c);
            }
        }
        return s2.toString();
    }
}

转换为数组

因为知道替换字符是1个替换3个,所以可以创建最大长度为length*3

class Solution {
    public String replaceSpace(String s) {
        int length = s.length();
        char[] array = new char[length * 3];
        int size = 0;
        for (int i = 0; i < length; i++) {
            char c = s.charAt(i);
            if (c == ' ') {
                array[size++] = '%';
                array[size++] = '2';
                array[size++] = '0';
            } else {
                array[size++] = c;
            }
        }
        String newStr = new String(array, 0, size);
        return newStr;
    }
}

作者:LeetCode-Solution
链接:https://leetcode-cn.com/problems/ti-huan-kong-ge-lcof/solution/mian-shi-ti-05-ti-huan-kong-ge-by-leetcode-solutio/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

标签:String,++,length,空格,int,算法,字符串,array,size
来源: https://blog.csdn.net/qq_56303170/article/details/122278598

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有