在Java中,哪里比String使用StringBuffer / StringBuilder?

  • String类对象是不可变的,而StringBuffer和StringBuilder对象是可变的。

  • 不同步StringBuilder时,同步StringBuffer。

  • 使用StringBuffer或StringBuilder在内部实现串联运算符“ +”。

  • 如果Object值不会改变,请使用String Class,因为String对象是不可变的。

  • 如果Object值可以更改并且只能从单个线程访问,请使用StringBuilder,因为StringBuilder是不同步的。

  • 如果Object值可以更改并且将被多个线程修改,请使用StringBuffer,因为StringBuffer是同步的。