2.替换空格
Posted chanaichao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2.替换空格相关的知识,希望对你有一定的参考价值。
题目描述
请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
题目解答
public class Solution { public String replaceSpace(StringBuffer str) { int spacenum=0; for(int i=0;i<str.length();i++){ if(str.charAt(i)==‘ ‘){ spacenum++; } } //从后往前替换,每个字符只要移动一次 int indexOld=str.length()-1; int newLength=str.length()+spacenum*2; int indexNew=newLength-1; str.setLength(newLength); for(;indexOld>=0 && indexOld<indexNew;--indexOld){ if(str.charAt(indexOld)==‘ ‘){ str.setCharAt(indexNew--,‘0‘); str.setCharAt(indexNew--,‘2‘); str.setCharAt(indexNew--,‘%‘); }else{ str.setCharAt(indexNew--,str.charAt(indexOld)); } } return str.toString(); } }
从前往后数空格
从后往前移动字符并插入
以上是关于2.替换空格的主要内容,如果未能解决你的问题,请参考以下文章