面试题4:替换空格

来源:互联网 发布:mac里的照片和相簿 编辑:程序博客网 时间:2024/06/07 21:45
public class Solution {
    public String replaceSpace(StringBuffer str) {
    int num=0;
        int indexOfOriginal=str.length()-1;
        if(str==null){
            return null;
        }
        for(int i=0;i<=indexOfOriginal;i++){
            if(str.charAt(i)==' '){
                num++;
            }
        }
        int indexOfNew=indexOfOriginal+2*num;//增加长度
        str.setLength(indexOfNew+1);
        while(indexOfOriginal>=0&&indexOfNew>=indexOfOriginal){
            if(str.charAt(indexOfOriginal) ==' '){
                str.setCharAt(indexOfNew--,'0');
                str.setCharAt(indexOfNew--,'2');
                str.setCharAt(indexOfNew--,'%');
            }
            else{
                str.setCharAt(indexOfNew--,str.charAt(indexOfOriginal));
            }
            indexOfOriginal--;
        }
        return str.toString();
    }
}
原创粉丝点击