String,StringBufffer之间的区别以及StringBuffer总结

StringBuffer与String的区别

从类型来看:String是字符串常量,而StringBuffer是字符串变量。就是说String是不可改变的,你可能会对下面的代码感到奇怪:

String s = "abc";
s+="d";
  • 1
  • 2

其实JVM干的事情并不是真的在String后面加了一个”d”,他执行第一行代码时创建了一个s对象,而执行第二行的时候又创建了一个新的对象,也就是说之前我们创建的s对象根本没有发生改变。所以String操作字符串时实际上就是不断创建新的对象,原来的对象会被回收掉。这个的效率是十分低下的。
因此我们的结论是:当我们需要操作少量的数据时用String,操作大量数据时用StringBuffer,当然,对于字符串变量还有一个StringBuilder,不过我还没有学到线程,所以以后再比较他们的区别。

StringBuffer的常用操作

1.append()

s.append('a');//加字符
s.append("a");//加字符串
s.append(1);//加数字
  • 1
  • 2
  • 3

2.reverse()

s.reverse();
  • 1

3.delete(int start,int end)

s.delete(0,2);
  • 1

4.length()

int length=s.length();//获取字符串长度
  • 1

5.charAt(int index)

char c=s.charAt(0);//获取第一个字符
  • 1

6.parseInt()

int a = s.parseInt();//将字符串转换为整数
posted @ 2019-05-15 17:12  天涯海角路  阅读(786)  评论(0)    收藏  举报