Java中的String、StringBuilder和StringBuffer的区别?

1、String

String底层是private final char value[],final修饰了,所以不可变。

Java中的String、StringBuilder和StringBuffer的区别?

 

2、StringBuilder

StringBuilder和StringBuffer都继承了AbstractStringBuilder,而AbstractStringBuilder中存放数据的char[] value,所以是可变的。

Java中的String、StringBuilder和StringBuffer的区别?

 

3、StringBuffer

StringBuilder和StringBuffer都继承了AbstractStringBuilder,而AbstractStringBuilder中存放数据的char[] value,所以是可变的。

另外StringBuffer中的很多方法是加了synchronized关键字,所以是同步的。

Java中的String、StringBuilder和StringBuffer的区别?

 

应用场景分析

  1. String适合操作少量数据
  2. StringBuilder适合单线程操作字符串缓冲区下操作大量数据
  3. StringBuffer适合多线程操作字符串缓冲区下操作大量数据

 

相关文章:

  • 2021-04-23
  • 2022-01-01
  • 2021-10-04
  • 2022-12-23
猜你喜欢
  • 2021-09-16
  • 2021-06-07
  • 2022-12-23
  • 2022-01-04
  • 2021-08-09
  • 2021-10-27
相关资源
相似解决方案