String,StringBuffer,StringBuilder的区别

来源:互联网 发布:js div name 编辑:程序博客网 时间:2024/06/07 21:19

String,StringBuffer,StringBuilder的区别,先简单说下StringBuffer和StringBuilder的区别就像HashTable和HashMap的区别一样,所以就不重点说了

======相关链接======

如果想了解更多HashMap和HashTable的区别请点击暴风城传送门

那么很多面试都会问  String和StringBuffer的区别是什么?

我还记得以前经常说的String是final类,所以不能被继承并且赋值后不能被改变,然后就看了下String源码,还真是final关键字修饰的,可是细心的猿会发现StringBuffer也是final修饰的,所以只是回答String是final类是不够的,根本原因是String把字符串存储在一个char数组里,而这个char数组是这样声明的 private final char value[];而StringBuffer继承自AbstractStringBuilder,里面声明char数组的方式是char[] value;并且StringBuffer内置了一些操纵数组的方法,如append,deleteCharAt等

以上是个人对这三者的认知,如果有误请留言,共同进步