免费可以看的无遮挡av无码|国产在线拍揄自揄视频网站|在线无码精品视频播放在|欧美亚洲国产成人精品,国产成人久久77777精品,亚洲欧美视频在线观看,色偷偷色噜噜狠狠网站久久

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁  >  應(yīng)聘面試  >  Java面試題  > String、StringBuffer、StringBuilder有什么區(qū)別?

String、StringBuffer、StringBuilder有什么區(qū)別?

來源:千鋒教育
發(fā)布人:syq
時(shí)間: 2022-11-17 18:34:19 1668681259

  1.String

  String類是不可變的,所謂不可變意思就是創(chuàng)建一個(gè)類后任何對(duì)String的改變都會(huì)引發(fā)新的String對(duì)象的生成;

  讓我們舉個(gè)例子來看看就明白了:

  String str ="abc";

  str = str +"def";//這一步j(luò)vm會(huì)再次創(chuàng)建一個(gè)String對(duì)象

  第二次其實(shí)jvm又生成了一個(gè)String類,而不是直接覆蓋原來的"abc",因此我們說String類是不可改變類。這一種特性會(huì)帶來一個(gè)問題,每次拼接都要?jiǎng)?chuàng)建都要?jiǎng)?chuàng)建一次對(duì)象,當(dāng)我們要拼接大量字符串的時(shí)候,效率會(huì)變得非常非常慢。

String、StringBuffer、StringBuilder

  2.StringBuffer

  StringBuffer不同于String的是StringBuffer是可變的,一樣的我們來舉個(gè)例子看看:

  StringBuffer sb =new StringBuffer("abc");

  sb.append("efg");//并沒有創(chuàng)建一個(gè)新的對(duì)象

  這里第二步并沒有產(chǎn)生一個(gè)新的對(duì)象,而是在原來的基礎(chǔ)上追加字符串,這種方式在拼接字符串的時(shí)候效率肯定比String要高得多。

  3.StringBuilder

  StringBuffer和StringBuilder類的區(qū)別也是如此,他們的原理和操作基本相同,區(qū)別在于StringBuffer支持并發(fā)操作,線性安全的,適合多線程中使用。

  StringBuilder不支持并發(fā)操作,線性不安全的,不適合多線程中使用。新引入的StringBuilder類不是線程安全的,但其在單線程中的性能比StringBuffer高。

  點(diǎn)評(píng):上面大概介紹了String、StringBuffer、StringBuilder的區(qū)別,那么我們要處理字符串的時(shí)候要選擇哪個(gè)呢?總結(jié)如下:

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

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

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

tags:
聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請(qǐng)您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
面向?qū)ο缶幊痰奶卣魇鞘裁?請(qǐng)解釋每個(gè)特征

答案:面向?qū)ο缶幊痰奶卣靼ǎ悍庋b(Encapsulation):封裝是將相關(guān)的數(shù)據(jù)和方法組合在一起形成類的機(jī)制。它可以隱藏內(nèi)部實(shí)現(xiàn)細(xì)節(jié),只暴露必要的...詳情>>

2023-07-18 13:56:00
容器是什么?如何理解容器

  容器(Container)是一個(gè)廣泛的概念,指的是一種可以容納其他元素或?qū)ο蟮臄?shù)據(jù)結(jié)構(gòu)或抽象概念。在計(jì)算機(jī)科學(xué)中,容器的概念經(jīng)常出現(xiàn)在數(shù)據(jù)結(jié)...詳情>>

2023-05-08 13:41:00