题目:请实现一个函数,把字符串 s 中的每个空格替换成"%20"。
示例 1:
输入:s = “We are happy.”
输出:“We%20are%20happy.”
代码:
class Solution {
public String replaceSpace(String s) {
StringBuilder res=new StringBuilder();
char charArray[]=s.toCharArray();
for(int i=0;i<charArray.length;i++)
{
if(charArray[i]==' ')
{
res.append('%');
res.append('2');
res.append('0') ;
}
else{
res.append(charArray[i]);
}
}
return res.toString();
}
}
知识点:
字符串不能改变但是可以被转换
ToCharArray( )的用法,将字符串对象中的字符转换为一个字符数组。
StringBuffer对象
则代表一个字符序列可变的字符串,当一个StringBuffer被创建以后,通过StringBuffer提供的append()、insert()、reverse()、setCharAt()、setLength()等方法可以改变这个字符串对象的字符序列。一旦通过StringBuffer生成了最终想要的字符串,就可以调用它的toString()方法将其转换为一个String对象。
StringBuffer对象是一个字符序列可变的字符串,它没有重新生成一个对象,而且在原来的对象中可以连接新的字符串。
substring()方法可以得到字符串字符。
substring(0,1)得到第0个到第1个字符。
Split和ToCharArray的区别:
1.split是根据你需要按照的分隔符来分割的。
比如:
String a = “avc,d,e,s,f”;
String []b = a.split(’,’);
(2)toCharArray是将String对象的每一个下标位的对象保存在char[]中。
比如:
String a = “abcd”;
char[] b = a.toCharArray();
//这个b保存的信息就是[‘a’,‘b’,‘c’,‘d’]。