换掉字符串中的空格,将空格替换成%20

来源:互联网 发布:欧美颜值女星 知乎 编辑:程序博客网 时间:2024/05/09 14:26

一、思路:

从字符串的后面向前遍历一次替换空格。

二、代码

/** * 04、替换掉字符串中的空格,将空格替换成%20 */public class Solution1 {    //计算空格数    public int getBlankNum(String str)    {        int blankNum=0;        for(int i=0;i<str.length();i++)        {            if(str.charAt(i)==' ')                blankNum++;        }        return  blankNum;    }    //打印最后的字符串    public void printChar(char[] retlString)    {        for (char i:retlString) {            System.out.print(i);        }    }    //替换空格       public void blankReplace(String str)       {           int len=str.length();           if(len<0||str==null)               return;           int blankNum=getBlankNum(str);           int newLen=len+2*blankNum;           char[] repalceRest=new char[newLen];           int strIndex=len-1;           int replaStrIndex=newLen-1;          while(strIndex>=0&&replaStrIndex>=0)          {              if(str.charAt(strIndex)==' ')              {                  repalceRest[replaStrIndex--]='0';                  repalceRest[replaStrIndex--]='2';                  repalceRest[replaStrIndex--]='%';              }              else              {                  repalceRest[replaStrIndex--]=str.charAt(strIndex);              }              strIndex--;          }           printChar(repalceRest);       }}

0 0
原创粉丝点击