string的append方法 StringBuilder的append方法和String String的區(qū)別?
StringBuilder的append方法和String String的區(qū)別?StringBuilder和StringBuffer。字符串存儲在char[]中,char[]存儲在堆中。StringB
StringBuilder的append方法和String String的區(qū)別?
StringBuilder和StringBuffer。字符串存儲在char[]中,char[]存儲在堆中。
StringBuilder和StringBuffer的附件將string對象中的char[]字符直接復(fù)制到StringBuilder和StringBuffer的char[]中,與每次創(chuàng)建一個新的string對象并打開一段新的內(nèi)存相比,效率更高。當(dāng)然,當(dāng)StringBuilder和StringBuffer的char[]長度不夠時,會打開一段新的內(nèi)存。此外,StringBuffer是線程安全的,而StringBuilder不是。
StringBuffer的"append"和String的" "用來連接字符串哪個好些?
一旦字符串被分配或?qū)嵗?,就無法更改。如果給定一個新值,內(nèi)存地址將被重新打開存儲。當(dāng)StringBuffer類使用append和insert等方法更改字符串值時,它只對原始對象的內(nèi)存地址進(jìn)行連續(xù)操作,從而降低了資源成本。因此,我們得出結(jié)論:當(dāng)您需要頻繁修改字符串時,應(yīng)該先創(chuàng)建一個StringBuffer類對象進(jìn)行操作,然后將最終結(jié)果轉(zhuǎn)換成string類對象進(jìn)行返回,這樣效率會更高。