国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

深入解析StringBuffer和StringBuilder的區別

2019-11-26 16:02:17
字體:
來源:轉載
供稿:網友

做項目中經常用到String和StringBuilder,String可以用“+”來對字符串進行拼接,StringBuilder用append進行拼接,一直不明白既然可以用String,問什么還要用StringBuilder。盡管在做數據庫查詢的時候,習慣性的用了StringBuilder對查詢語句進行拼接,但仍然不知道原因。今天看視頻的時候,又看到了StringBuffer,感覺用法又差不多,所以特意查了一下這些東西的區別。
歸納如下:
1.在執行速度方面的比較:StringBuilder >  StringBuffer  

2.StringBuffer與StringBuilder,他們是字符串變量,是可改變的對象,每當我們用它們對字符串做操作時,實際上是在一個對象上操作的,不像String一樣創建一些對象進行操作,所以速度就快了。

3.StringBuilder:線程非安全的
  StringBuffer:線程安全的

當我們在字符串緩沖去被多個線程使用是,JVM不能保證StringBuilder的操作是安全的,雖然他的速度最快,但是可以保證StringBuffer是可以正確操作的。當然大多數情況下就是我們是在單線程下進行的操作,所以大多數情況下是建議用StringBuilder而不用StringBuffer的,就是速度的原因。

對于三者使用的總結:
1.如果要操作少量的數據用 String
2.單線程操作字符串緩沖區 下操作大量數據  StringBuilder
3.多線程操作字符串緩沖區 下操作大量數據  StringBuffer

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 怀来县| 甘德县| 右玉县| 巫山县| 喀喇沁旗| 莎车县| 岑溪市| 兴海县| 连云港市| 涿州市| 福清市| 南汇区| 通化市| 饶阳县| 大丰市| 安图县| 营山县| 德钦县| 同江市| 定陶县| 台中市| 濮阳县| 蒙自县| 容城县| 三河市| 麻城市| 泸定县| 河源市| 宣恩县| 隆昌县| 吉林省| 宁远县| 潢川县| 溧水县| 旬阳县| 新民市| 冕宁县| 大足县| 兰西县| 行唐县| 乌拉特中旗|