首頁 >Java >java教程 >什麼時候應該對 Java 字串使用'new”關鍵字?

什麼時候應該對 Java 字串使用'new”關鍵字?

Barbara Streisand
Barbara Streisand原創
2024-12-07 21:54:13554瀏覽

When should you use the

Java 字串中的字串文字和新關鍵字

在Java 中,String 類別是用來表示字元序列的基本資料類型。但是,使用 new 關鍵字建立新的 String 物件和直接將文字字串指派給變數之間存在細微的差異。

使用new 關鍵字

程式碼片段String s = new String("silly");建立String 類別的新實例,並使用文字「silly」作為參數。這個操作會分配額外的內存,並在堆上建立一個新物件。

直接賦值一個字面值

另一方面,賦值String s = "不再傻了」;直接將字面值「不再愚蠢」賦給變量s。 Java自動建立一個匿名String物件並將其儲存在變數中,而不需要使用new關鍵字。這種優化避免了不必要的記憶體分配和物件創建。

但是,對於不擴充 String 類別的 CaseInsensitiveString 類,不直接支援直接賦值。為此,我們有兩個選項:

選項1:擴展String 類別

我們可以擴展String 類別以建立一個繼承其行為的CaseInsensitiveString 類,並允許直接賦值文字。這是透過重寫 toString() 和 equals() 方法來提供不區分大小寫的比較來完成的。

選項 2:自訂建構子重載

另一種方法是重載CaseInsensitiveString 的建構子接受文字參數。這可以透過提供一個接受 String 參數並自動初始化 s 字段的建構函數來實現。

以上是什麼時候應該對 Java 字串使用'new”關鍵字?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn