替换空格——剑指offer
2016-09-01 21:26
375 查看
题目描述
请实现一个函数,将一个字符串中的空格替换成“%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")));
}
}
相关文章推荐
- 常用的Javascript设计模式
- 异步提交表单插件jquery.form.min.js的使用实例
- js加入购物车抛物线动画
- JavaScript 类型 及 类型转换
- js写全选按钮、全不选按钮、反选按钮、全选全不选复选框代码
- 剑指Offer30 从1到n整数出现1的个数
- HTML基础
- 剑指Offer_11 数值的整数次方
- REACT-NATIVE混编----bundle错误解决
- renderJson()返回的数据格式
- 二维数组中的查找——剑指Offer
- Leetcode 24 Swap Nodes in Pairs
- JS为循环动态生成的节点添加点击事件
- Html 学习二
- CSS-float详解,深入理解clear:both[转+部分原创]
- 剑指Offer29 连续子数组最大和
- jQuery的Ajax与Java通过POST方式交互
- ajax 前台接收json 为undefined
- jQuery操作select
- 使用SpriteBatchNode时出现CCSprite is not using the same texture id错误