请实现一个函数,把字符串 s 中的每个空格替换成"%20"。
示例 1:
输入:s = "We are happy."
输出:"We%20are%20happy."
方法一:replaceAll方法
class Solution {
public String replaceSpace(String s) {
//这里要用的是StringBuffer
// for(int i=0;i<s.length();i++){
// char ch1=s.charAt(i);
// if(ch1 == ' '){
// s.replace(i,"%20");
// }
// }
// return s.toString();
return s.toString().replaceAll("\\s","%20");
}
}
方法二:
class Solution {
public String replaceSpace(String s) {
int length=s.length();
//转化成字符数组且为原先长度的3倍
char[] arr=new char[length*3];
int size=0;
for(int i=0;i<length;i++){
char c=s.charAt(i);
if(c==' '){
arr[size++]='%';
arr[size++]='2';
arr[size++]='0';
}else{
arr[size++]=c;
}
}
String newChar=new String(arr,0,size);
return newChar;
}
}