String和StringBuffer 的区别
- StringBuffer就是字符串缓冲区,String在内容中分配的大小是固定的,所以,String实体不能改变。
- 但是StringBuffer(缓冲区)在内存中分配的大小就不是固定的。所以StringBuffer实体可以改变。即增删查改。
- 缓冲区肯定有大小,但是,String缓冲区的大小很大,以至于正常使用时,不会超出范围。
String和StringBuffer相互转化
//生成String
String s1=new String(StringBuffer s2);
//生成StringBuffer
StringBuffer s3=new StringBuffer(String s5)
StringBuffer的构造方法:
- StringBuffer() :默认分配16字节的空间
- StringBuffer(int n):指定分配n个字节的空间
- StringBuffer(String s):将String s写到字符串缓冲区中,缓冲区的容量为16+s.length();
StringBuffer常用的方法
- 返回值StringBuffer
1.增:
insert(int index,String s)
append(String s)
append(int n)
append(Object o)
第二个和第四个可以合并为一个;
2.删
delete(int startIndex,int endIndex)
3.查
4.改
replace(int startIndex,int endIndex,String s)
5.反转
reverse()
charAt(int index) 返回的是char
- 返回值是基本类型
- 无返回值
setCharAt(int index,char c)