题目描述
请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
代码格式要求
public class Solution {
public boolean Find(int target, int [][] array) {
}
}
解题
解法一、java自带的函数
public class Solution {
public static String replaceSpace(StringBuffer str) {
return str.toString().replace(" ", "%20");
}
public static void main(String[] args) {
StringBuffer str =new StringBuffer().append("We Are Happy");
System.out.println(replaceSpace(str));//打印输出
}
}
当对字符串进行修改的时候,需要使用 StringBuffer 和 StringBuilder 类。
toString() 方法返回此对象本身。
解法二、直接在字符串上进行替换
public class Solution {
public static String replaceSpace(StringBuffer str) {
int n = str.length(); //定义字符串的长度
for(int i=0; i<n; i++) {
if(str.charAt(i) == ' ') {
n += 2; //对字符串进行扩容
str.replace(i, i+1, "%20");
}
}
return str.toString();
}
public static void main(String[] args) {
StringBuffer str =new StringBuffer().append("We Are Happy");
System.out.println(replaceSpace(str));//打印输出
}
}
char charAt(int index),返回此序列中指定索引处的 char 值。
replace(int start, int end, String str),使用给定 String 中的字符替换此序列的子字符串中的字符。