1. 题目

请实现一个函数,把字符串 s 中的每个空格替换成%20

示例 1:

输入:s = "We are happy."
输出:"We%20are%20happy."

限制:

0 <= s 的长度 <= 10000

2. 解题思路(通用

逐个字符遍历String字符串,并设置一个结果字符串变量re。

如果遍历到的字符不是空格,就把字符存入结果变量;

如果遍历到的字符是空格,则将%20存入结果变量;

由于结果字符串re需要增加字符,而String类型有一个特点:

  • String类是不可改变的,所以你一旦创建了String对象,那它的值就无法改变了,因此re不能定义为string类型,

如果需要对字符串做很多修改,那么应该选择使用 StringBuffer 或 StringBuilder 类。

这是java的一个知识点,具体请看String、StringBuffer、StringBuilder 的区别?

3. 数据类型功能函数总结

//String
String.length();//获得字符串长度
String.charAt(index);//获得字符串中下标index的字符
//StringBuffer
StringBuffer 变量名=new StringBuffer();//声明一个StringBuffer类型的变量
StringBuffer.append(ch);//在尾部添加字符
StringBuffer.toString();//将StringBuffer转为String类型

4. java代码

class Solution {
public String replaceSpace(String s) {
StringBuilder re=new StringBuilder();
for(int i=0;i<s.length();i++){
if(s.charAt(i)==' '){
re.append('%');
re.append('2');
re.append('0');
}
else{
re.append(s.charAt(i));
}
}
return re.toString();
}
}

最新文章

  1. jQuery stop()用法
  2. win8.1下golang+sdl2.0环境搭建
  3. mplayer依赖关系不满足
  4. AWS S3 API实现文件上传下载
  5. nmap十条常用命令行格式
  6. 控制台(Console)报错:java.io.IOException: Broken pipe
  7. SDUT 2610 Boring Counting(离散化+主席树区间内的区间求和)
  8. C#开源大全--汇总
  9. 嘿嘿,JAVA里第一次运行单元测试成功,立存
  10. Fast Intro To Java Programming (1)
  11. linux内核驱动中_IO, _IOR, _IOW, _IOWR 宏的用法与解析(引用)
  12. 安卓手机内外SD卡互换
  13. nodejs实现接收Snmp的Trap消息
  14. CodeForces 69D Dot (游戏+记忆)
  15. MurmurHash
  16. Redis的知识点总结~Linux系统操作~
  17. maven &quot;mvn不是内部或外部命令,也不是可运行的程序或批处理文件&quot;
  18. MySql:SELECT 语句(三) WHERE 指定查询条件
  19. 第三个spring冲刺总结(附团队贡献分)
  20. 【精选】Jupyter Notebooks里的TensorFlow图可视化

热门文章

  1. Byte和byte的区别
  2. php 程序员进化之路
  3. 【云原生 · Kubernetes】kubernetes v1.23.3 二进制部署(一)
  4. java环境改完版本后无效
  5. React综合使用联系
  6. CLion和动态链接库
  7. 【软考-中级-其他】03、NoSQL和云计算
  8. 记一次InputStream流读取不完整留下的惨痛教训
  9. 持续发烧,试试Dart语言的异步操作,效率提升500%
  10. Mysql-delete语句