String,StringBuffer,StringBuilder區別與效率

 原文地址:String in Java
今天看到一篇文章,以爲頗有用,特地記下來。
總結:
區別:
1.String是不可變的,緣由是其用於存儲字符序列的char[] value數組被用final修飾了。
2.StringBuffer的char[] value數組初始化長度是參數長度+16,因此能夠使用其append()方法追加字符串。
3.StringBuilder與StringBuffer相似,不一樣點是其方法沒有被關鍵字synchronized修飾,因此它線程不安全,但它的效率要比StringBuffer高。

效率:
1.直接使用字符串常量「+」鏈接效率最高,例:String str = "abc"+"d";。
2.append()方法的效率高於String對象的"+"鏈接運算。
3.使用String類的intern()方法,可緩解因屢次建立對象帶來的程序低效問題。
數組

相關文章
相關標籤/搜索