面試:String、StringBuilder和StringBuffer的區別?

  • 可變性:String不可變,StringBuilder和StringBuffer可變

  • 線程安全:String、StringBuffer線程安全,StringBuilder線程不安全

  • 性能:StringBuilder > StringBuffer > String

String 每次更改數據都會new一個新的對象,因爲其本身是一個常量。但StringBuffer和StringBuilder會對本身進行修改,因此String速度最慢

StringBuilder自身沒有加鎖,因此線程不安全,但速度較快,StringBuffer加鎖,線程安全。

  • 一般使用:String

  • 大量數據單線程:StringBuilder

  • 大量數據多線程:StringBuffer

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章