牛客网_剑指offer_替换空格
2018-01-25 18:57
323 查看
题目描述
请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。解题思路
题目并不是很难,唯一要注意的是当字符串进行修改之后字符串的长度也会跟着变长,所以循环结束的条件应为动态变换的字符串长度。出题意图应该是要考java的语言基础。
String 类是不可改变的,所以你一旦创建了 String 对象,那它的值就无法改变了。
如果需要对字符串做很多修改,那么应该选择使用 StringBuffer & StringBuilder 类。
当对字符串进行修改的时候,需要使用 StringBuffer 和 StringBuilder 类。
和 String 类不同的是,StringBuffer 和 StringBuilder 类的对象能够被多次的修改,并且不产生新的未使用对象。
StringBuilder 类在 Java 5 中被提出,它和 StringBuffer 之间的最大不同在于 StringBuilder 的方法不是线程安全的(不能同步访问)。
由于 StringBuilder 相较于 StringBuffer 有速度优势,所以多数情况下建议使用 StringBuilder 类。然而在应用程序要求线程安全的情况下,则必须使用 StringBuffer 类。
public class Solution {
public String replaceSpace(StringBuffer str) {
for(int i = 0; i < str.length(); i++) {
if(str.charAt(i) == ' ') {
str.replace(i, i+1, "%20");
}
}
return str.toString();
}
}
相关文章推荐
- 牛客网-剑指Offer-替换空格
- 牛客网-剑指Offer-替换空格
- 牛客网-剑指Offer-替换空格
- 牛客网-剑指Offer-替换空格
- 牛客网-剑指Offer-替换空格
- 牛客网-剑指offer-替换空格
- 牛客网-剑指offer-02-替换空格
- 牛客网-剑指Offer-替换空格
- 牛客网-剑指Offer-替换空格
- 牛客网-剑指Offer-替换空格
- 牛客网-剑指Offer-替换空格
- 牛客网-剑指Offer-替换空格
- 牛客网-剑指Offer-替换空格
- 牛客网_剑指offer_第二题替换空格_C++/C
- 牛客网-剑指Offer-替换空格
- 剑指Offer:替换空格
- 剑指Offer-5:替换字符串的空格
- 剑指offer(java代码)——替换空格
- 剑指Offer面试题2:替换空格
- 【剑指Offer面试题】 九度OJ1510:替换空格