String ,StringBuilder ,StringBuffer區(qū)別與聯(lián)系

1. String 類

String的值是不可變的谭梗,這就導(dǎo)致每次對(duì)String的操作都會(huì)生成新的String對(duì)象止潮,不僅效率低下凶掰,而且大量浪費(fèi)有限的內(nèi)存空間把敢。

String a = "a"; //假設(shè)a指向地址0x0001

a = "b";//重新賦值后a指向地址0x0002寄摆,但0x0001地址中保存的"a"依舊存在,但已經(jīng)不再是a所指向的,a 已經(jīng)指向了其它地址修赞。

因此String的操作都是改變賦值地址而不是改變值操作婶恼。

2. StringBuffer是可變類,和線程安全的字符串操作類柏副,任何對(duì)它指向的字符串的操作都不會(huì)產(chǎn)生新的對(duì)象勾邦。 每個(gè)StringBuffer對(duì)象都有一定的緩沖區(qū)容量,當(dāng)字符串大小沒有超過容量時(shí)割择,不會(huì)分配新的容量眷篇,當(dāng)字符串大小超過容量時(shí),會(huì)自動(dòng)增加容量荔泳。

StringBuffer buf=new StringBuffer(); //分配長(zhǎng)16字節(jié)的字符緩沖區(qū)

StringBuffer buf=new StringBuffer(512); //分配長(zhǎng)512字節(jié)的字符緩沖區(qū)

StringBuffer buf=new StringBuffer("this is a test")//在緩沖區(qū)中存放了字符串蕉饼,并在后面預(yù)留了16字節(jié)的空緩沖區(qū)虐杯。

3.StringBuffer

StringBuffer和StringBuilder類功能基本相似,主要區(qū)別在于StringBuffer類的方法是多線程椎椰、安全的厦幅,而 StringBuilder不是線程安全的,相比而言慨飘,StringBuilder類會(huì)略微快一點(diǎn)。對(duì)于經(jīng)常要改變值的字符串應(yīng)該使用 StringBuffer和StringBuilder類译荞。

4.線程安全

StringBuffer 線程安全

StringBuilder 線程不安全

5.速度

一般情況下,速度從快到慢:StringBuilder > StringBuffer > String,這種比較是相對(duì)的瓤的,不是絕對(duì)的。

6.總結(jié)

(1).如果要操作少量的數(shù)據(jù)用 = String

(2).單線程操作字符串緩沖區(qū) 下操作大量數(shù)據(jù) = StringBuilder

(3).多線程操作字符串緩沖區(qū) 下操作大量數(shù)據(jù) = StringBuffer

出自:http://www.open-open.com/lib/view/open1322537017406.html

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末吞歼,一起剝皮案震驚了整個(gè)濱河市圈膏,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌篙骡,老刑警劉巖稽坤,帶你破解...
    沈念sama閱讀 222,946評(píng)論 6 518
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異糯俗,居然都是意外死亡尿褪,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,336評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門得湘,熙熙樓的掌柜王于貴愁眉苦臉地迎上來杖玲,“玉大人,你說我怎么就攤上這事淘正“诼恚” “怎么了?”我有些...
    開封第一講書人閱讀 169,716評(píng)論 0 364
  • 文/不壞的土叔 我叫張陵鸿吆,是天一觀的道長(zhǎng)囤采。 經(jīng)常有香客問我,道長(zhǎng)惩淳,這世上最難降的妖魔是什么蕉毯? 我笑而不...
    開封第一講書人閱讀 60,222評(píng)論 1 300
  • 正文 為了忘掉前任,我火速辦了婚禮黎泣,結(jié)果婚禮上恕刘,老公的妹妹穿的比我還像新娘。我一直安慰自己抒倚,他們只是感情好褐着,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,223評(píng)論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著托呕,像睡著了一般含蓉。 火紅的嫁衣襯著肌膚如雪频敛。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,807評(píng)論 1 314
  • 那天馅扣,我揣著相機(jī)與錄音斟赚,去河邊找鬼。 笑死差油,一個(gè)胖子當(dāng)著我的面吹牛拗军,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播蓄喇,決...
    沈念sama閱讀 41,235評(píng)論 3 424
  • 文/蒼蘭香墨 我猛地睜開眼发侵,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了妆偏?” 一聲冷哼從身側(cè)響起刃鳄,我...
    開封第一講書人閱讀 40,189評(píng)論 0 277
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎钱骂,沒想到半個(gè)月后叔锐,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,712評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡见秽,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,775評(píng)論 3 343
  • 正文 我和宋清朗相戀三年愉烙,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片张吉。...
    茶點(diǎn)故事閱讀 40,926評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡齿梁,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出肮蛹,到底是詐尸還是另有隱情勺择,我是刑警寧澤,帶...
    沈念sama閱讀 36,580評(píng)論 5 351
  • 正文 年R本政府宣布伦忠,位于F島的核電站省核,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏昆码。R本人自食惡果不足惜气忠,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,259評(píng)論 3 336
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望赋咽。 院中可真熱鬧旧噪,春花似錦、人聲如沸脓匿。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,750評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)陪毡。三九已至米母,卻和暖如春勾扭,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背铁瞒。 一陣腳步聲響...
    開封第一講書人閱讀 33,867評(píng)論 1 274
  • 我被黑心中介騙來泰國(guó)打工妙色, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人慧耍。 一個(gè)月前我還...
    沈念sama閱讀 49,368評(píng)論 3 379
  • 正文 我出身青樓身辨,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親芍碧。 傳聞我的和親對(duì)象是個(gè)殘疾皇子栅表,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,930評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容