String StringBuilder StringBuffer

Posted 博客首页

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了String StringBuilder StringBuffer相关的知识,希望对你有一定的参考价值。

1.可变与不可变

  String类中使用字符数组保存字符串,如下就是,因为有“final”修饰符,所以可以知道string对象是不可变的。

    private final char value[];

  StringBuilder与StringBuffer都继承自AbstractStringBuilder类,在AbstractStringBuilder中也是使用字符数组保存字符串,如下就是,可知这两种对象都是可变的。

    char[] value;

2.是否多线程安全

  String中的对象是不可变的,也就可以理解为常量,显然线程安全

  AbstractStringBuilder是StringBuilder与StringBuffer的公共父类,定义了一些字符串的基本操作,如expandCapacity、append、insert、indexOf等公共方法。

  StringBuffer对方法加了同步锁或者对调用的方法加了同步锁,所以是线程安全的

 

 

 

以上是关于String StringBuilder StringBuffer的主要内容,如果未能解决你的问题,请参考以下文章

String与StringBuilder区别总结

String,StringBuffer与StringBuilder

String,StringBuffer与StringBuilder

Java String StringBuffer StringBuilder

String,StringBuffer与StringBuilder的区别

String,StringBuffer与StringBuilder的区别??