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

      網(wǎng)友投稿 942 2025-04-04

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

      推薦資源站:https://zhimalier.com/

      java中String、StringBuffer、StringBuilder的介紹

      String 類(lèi)包括的方法可用于檢查序列的單個(gè)字符、比較字符串、搜索字符串、提取子字符串、創(chuàng)建字符串副本并將所有字符全部轉(zhuǎn)換為大寫(xiě)或小寫(xiě)。string很常見(jiàn)不再陳述!

      StringBuffer線程安全的可變字符序列。一個(gè)類(lèi)似于 String 的字符串緩沖區(qū),但不能修改。雖然在任意時(shí)間點(diǎn)上它都包含某種特定的字符序列,但通過(guò)某些方法調(diào)用可以改變?cè)撔蛄械拈L(zhǎng)度和內(nèi)容。可將字符串緩沖區(qū)安全地用于多個(gè)線程。可以在必要時(shí)對(duì)這些方法進(jìn)行同步,因此任意特定實(shí)例上的所有操作就好像是以串行順序發(fā)生的,該順序與所涉及的每個(gè)線程進(jìn)行的方法調(diào)用順序一致。每個(gè)字符串緩沖區(qū)都有一定的容量。只要字符串緩沖區(qū)所包含的字符序列的長(zhǎng)度沒(méi)有超出此容量,就無(wú)需分配新的內(nèi)部緩沖區(qū)數(shù)組。如果內(nèi)部緩沖區(qū)溢出,則此容量自動(dòng)增大。從 JDK 5 開(kāi)始,為該類(lèi)補(bǔ)充了一個(gè)單個(gè)線程使用的等價(jià)類(lèi),即StringBuilder。

      StringBuilder一個(gè)可變的字符序列。此類(lèi)提供一個(gè)與 StringBuffer 兼容的 API,但不保證同步。該類(lèi)被設(shè)計(jì)用作 StringBuffer 的一個(gè)簡(jiǎn)易替換,用在字符串緩沖區(qū)被單個(gè)線程使用的時(shí)候(這種情況很普遍)。如果可能,建議優(yōu)先采用該類(lèi),因?yàn)樵诖蠖鄶?shù)實(shí)現(xiàn)中,它比 StringBuffer 要快。

      相同:

      他們的的主要操作是 append 和 insert 方法,可重載這些方法,以接受任意類(lèi)型的數(shù)據(jù)。每個(gè)方法都能有效地將給定的數(shù)據(jù)轉(zhuǎn)換成字符串,然后將該字符串的字符追加或插入到字符串生成器中。append 方法始終將這些字符添加到生成器的末端;而 insert 方法則在指定的點(diǎn)添加字符。

      不同:

      可變與不可變

      String類(lèi)中使用字符數(shù)組保存字符串,final修飾,所以string對(duì)象是不可變的。

      StringBuilder與StringBuffer都繼承自AbstractStringBuilder類(lèi),在AbstractStringBuilder中也是使用字符數(shù)組保存字符串,因此是可變的

      是否線程安全

      String中的對(duì)象是不可變的,也就可以理解為常量,顯然線程安全。

      StringBuffer對(duì)方法加了同步鎖或者對(duì)調(diào)用的方法加了同步鎖,所以是線程安全的。

      StringBuilder并沒(méi)有對(duì)方法進(jìn)行加同步鎖,所以是非線程安全的。

      不過(guò)若是程序不是多線程,使用StringBuilder效率高于StringBuffer

      更多內(nèi)容請(qǐng)參見(jiàn)java API文檔!!

      任務(wù)調(diào)度

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:分頁(yè)符???(分頁(yè)符有什么用)
      下一篇:Excel 制作生日提醒提示10天內(nèi)有哪些職工快過(guò)生日
      相關(guān)文章
      91麻豆国产自产在线观看亚洲| 久久精品国产亚洲AV蜜臀色欲| 亚洲国产a∨无码中文777| 亚洲av永久无码嘿嘿嘿| 亚洲爆乳无码专区| 久久久久久久综合日本亚洲| 国产精品亚洲一区二区无码| 亚洲精品福利网泷泽萝拉| 亚洲人成人网站在线观看| 亚洲国产专区一区| 亚洲精品黄色视频在线观看免费资源| 国产午夜亚洲精品| 亚洲中文字幕一区精品自拍| 亚洲综合av一区二区三区| 亚洲精品无AMM毛片| 亚洲国产成人无码AV在线| 亚洲av纯肉无码精品动漫| 亚洲人成网亚洲欧洲无码| 亚洲精品第一国产综合亚AV| 久久精品国产亚洲av瑜伽| 亚洲AV色欲色欲WWW| 亚洲av成本人无码网站| 久久久久久久久无码精品亚洲日韩| 亚洲精品国产av成拍色拍| 亚洲AV永久无码天堂影院| 亚洲av无码成人精品区| 亚洲日韩人妻第一页| 亚洲精品无码午夜福利中文字幕| 亚洲三区在线观看无套内射| 亚洲午夜国产精品无码老牛影视| 亚洲成a人片在线观看无码 | 亚洲视频国产视频| 亚洲人成网站日本片| 亚洲日韩精品国产3区| 亚洲а∨天堂久久精品| 亚洲中文久久精品无码| 亚洲小视频在线观看| 亚洲丰满熟女一区二区v| 亚洲精品欧美综合四区| 国产亚洲一卡2卡3卡4卡新区| 亚洲精品无码日韩国产不卡?V |