日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

php 有 stringbuffer,string,stringbuffer以及stringbuilder的区别

發布時間:2025/3/20 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php 有 stringbuffer,string,stringbuffer以及stringbuilder的区别 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

string,stringbuffer以及stringbuilder的區別?

小編在一次電話面試中,被問過StringBuilder是線程安全的嗎,脫口而出是安全的,結果人家質疑我你是2年開發經驗嗎。長時間得不使用這個類,造成了我選擇的性的忘記,也可以說是基礎不牢吧。不知道大家有沒有過這樣的經歷,所以還是筆頭上記錄,更能增加我的記憶力。

String:大家都知道String是使用final修飾的,所以它的值是不可變的,這就導致每次對String的操作都會生成新的String對象,這樣不僅效率低下,而且大量浪費有限的內存空間,如圖:

我們可以看到,初始String值為“abc”,然后在這個字符串后面加上新的字符串“bv”,這個過程是需要重新在棧堆內存中開辟內存空間的,最終得到了“abcbv”字符串也相應的需要開辟內存空間,這樣短短的兩個字符串,卻需要開辟三次內存空間,不得不說這是對內存空間的極大浪費。為了應對經常性的字符串相關的操作,引入了兩個新的類——StringBuffer類和StringBuild類來對此種變化字符串進行處理。

StringBuilder類:在 Java 5 中被提出,特點是可變字符串。執行效率高,線程不安全。

StringBuffer類:特點是可變字符串,執行效率低,線程安全。

可以看得出時間上更快一些。

總結:如果要操作少量的數據用 String;

多線程操作字符串緩沖區下操作大量數據 StringBuffer;

單線程操作字符串緩沖區下操作大量數據 StringBuilder。

推薦教程: 《java教程》

總結

以上是生活随笔為你收集整理的php 有 stringbuffer,string,stringbuffer以及stringbuilder的区别的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。