首頁 >Java >java教程 >String_字串

String_字串

(*-*)浩
(*-*)浩轉載
2019-09-28 16:53:592156瀏覽

String_字串

不可變String

String物件是不可變的。 JVM對其做了一個優化,在記憶體中開闢了一段區域作為字串常數池。透過"字面量"形式建立的字串物件都會快取並重複使用。

//"字面量"形式创建的字符串
String str = "abc";

字串運算子:" " 和 StringBuilder

運算子 「 」可以連接String字串。編譯器有一個最佳化措施,當編譯原始碼時發現一個計算表達式所有參數都是字面量時,會直接進行計算,並將結果編譯到class檔案中。

String str = "abcd";
String str1 = "ab"+"cd";//输出abcd 对象不变
System.out.println(str==str1);//true

計算表達式一方為變量,那麼編譯器會在運行期拼接,最後產生新對象,消耗效能。

String str = "abcd";
String str1 = "ab";
String str2 = str1+"cd";//输出abcd 对象改变
	System.out.println(str==str2);//false

StringBuilder

編譯器在編譯時也會自動引用StringBuilder的append()方法拼接,最後呼叫toString()產生結果。但是在.calss字節碼中每次拼接循環都會建立一個StringBuilder對象,如果字串操作複雜,編寫.java檔時創建一個StringBuilder對象進行拼接。

String的常用方法

String_字串

#

以上是String_字串的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:csdn.net。如有侵權,請聯絡admin@php.cn刪除