在哪里使用StringBuffer/StringBuilder而不是String

Sou*_*Das 13 java string stringbuilder android

可能重复:
String,StringBuffer和StringBuilder

我们知道这String是不可变的StringBuffer/ StringBuilder可变的.但有时我们会混淆在代码中使用什么.. String或StringBuffer/StringBuilder ?? 实际上,我们使用的最大代码/快速代码String比StringBuffer/ 更喜欢StringBuilder.

这个问题是为了解决这个问题,如果你有任何想法和正当理由,请回复.

use*_*305 28

以下是这三个最常用类之间的主要区别.

  • String类对象是不可变的,而StringBuffer和StringBuilder对象是可变的.
  • StringBuffer在StringBuilder未同步时同步.
  • 连接运算符"+"是使用StringBuffer或StringBuilder内部实现的.

在String,StringBuffer和StringBuilder中选择的标准

  • 如果Object值不会更改,请使用String Class,因为String对象是不可变的.
  • 如果Object值可以更改并且只能从单个线程访问,请使用StringBuilder,因为StringBuilder是不同步的.
  • 如果Object值可以更改,并且将被多个线程修改,请使用StringBuffer,因为StringBuffer已同步.