替换空格——剑指offer

来源:互联网 发布:域名过户需要多长时间 编辑:程序博客网 时间:2024/06/05 12:28

题目描述

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


package com;public class Main6 {    public static String replaceSpace(StringBuffer str) {    int spaceSum=0;    for(int i=0;i<str.length();i++){    if(str.charAt(i)==' ')    spaceSum++;    }    int oldLen=str.length();    int newLen=oldLen+2*spaceSum;    str.setLength(newLen);    for(int i=oldLen-1,j=newLen-1;i>=0&&j>=0;){    if(str.charAt(i)==' '){    str.setCharAt(j--, '0');    str.setCharAt(j--, '2');    str.setCharAt(j--, '%');    i--;    }else    str.setCharAt(j--, str.charAt(i--));    }    return str.toString();    }  public static void main(String[] args){  System.out.print(replaceSpace(new StringBuffer("a b")));  }}


0 0
原创粉丝点击