1、執(zhí)行速度方面:StringBuilder最快,StringBuffer次之,String最慢
原因:
String—字符串常量
StringBuffer—字符串變量
StringBuilder—字符串變量
? ?String類是不可變類,任何對(duì)String的改變都 會(huì)引發(fā)新的String對(duì)象的生成;StringBuffer則是可變類,任何對(duì)它所指代的字符串的改變都不會(huì)產(chǎn)生新的對(duì)象。
2、StringBuilder線程非安全的、StringBuffer線程安全的
? ? 當(dāng)我們?cè)谧址彌_去被多個(gè)線程使用是,JVM不能保證StringBuilder的操作是安全的,雖然他的速度最快,但是可以保證StringBuffer是可以正確操作的。當(dāng)然大多數(shù)情況下就是我們是在單線程下進(jìn)行的操作,所以大多數(shù)情況下是建議用StringBuilder而不用StringBuffer的,就是速度的原因。
3、具體code
