java基础——String,StringBuffer,StringBuilder

2021-03-06 08:30

阅读:625

标签:需要   字符串   实现   end   pen   loading   基础   字符   sync   

String,StringBuffer,StringBuilder

技术图片

 

StringBuffer对象是一个字符序列可变的字符串,它没有重新生成一个对象,而且在原来的对象中调用了append方法增加了内容,因此值发生了改变

StringBuffer类中在实现方法上增加了 synchronized关键字 如下图

 技术图片

 

 这个关键字相当于给方法添加了一个锁,所以从这里来看,StringBuffer的线程是安全的。而StringBuilder类在实现方法上并无 synchronized关键字 ,因此它的线程是不安全的。

  1. String的值不可变,StringBuffer 和StringBuildr的值可变
  2. 运行速度 StringBuilder>StringBuffer>String (StringBuffer有锁,所以性能会降低)
  3. StringBuffer线程是安全的,适合多线程;StringBuilder线程是不安全的,适合单线程
  4. 如果不需要频繁的修改值,用String即可

java基础——String,StringBuffer,StringBuilder

标签:需要   字符串   实现   end   pen   loading   基础   字符   sync   

原文地址:https://www.cnblogs.com/xmhlog/p/14297036.html

上一篇:python 装饰器

下一篇:图的拓扑排序


评论


亲,登录后才可以留言!