首頁 > Java > java教程 > 為什麼我們不在 Java 中使用「new」來建立字串?

為什麼我們不在 Java 中使用「new」來建立字串?

Patricia Arquette
發布: 2024-11-13 16:45:02
原創
706 人瀏覽過

Why Don't We Use 'new' to Create Strings in Java?

Java 中的字串是物件:為什麼沒有「new」來建立?

Java 中的字串是對象,但與其他物件不同,它們通常是在不使用「new」關鍵字的情況下建立的。這種做法提出了一個問題:為什麼創建字串不需要「new」。

不使用「new」的原因:字串實習

而不是創建一個新的每次使用字串文字時,字串物件都會執行一個稱為實習的過程。實習涉及將字串文字儲存在中央池(稱為字串池)中。當遇到字串文字時,會根據字串池進行檢查。如果相同的字串文字已存在,則傳回對現有字串的引用,而不是建立新物件。

範例:

考慮以下程式碼:

String str1 = "Hello";
String str2 = "Hello";
登入後複製

在此範例中,「str1」和「str2」都引用字串池中的同一個String 對象,儘管是單獨建立的。因此,'str1 == str2' 的計算結果為 true,表示它們在物理上是相等的。

Interning 的優點:

Interning 透過減少數量來優化效能建立的 String 物件的數量,特別是對於經常使用的字串。例如,在多次使用字串文字的循環中,僅建立一個 String 對象,而不是每次迭代都重新建立它,從而節省大量記憶體。

使用「new」建立字串

雖然建議的方法是實習,但仍可使用「new」建立字串。但是,需要注意的是,這可能會導致為相同字串值建立多個 String 對象,這可能會影響記憶體使用和效能。

結論:

Java 中字串建立中缺少「new」源自於字串駐留的使用。 Interning 透過減少不必要的物件創建和提高記憶體效率來提高效能,使其成為創建字串的首選方法。

以上是為什麼我們不在 Java 中使用「new」來建立字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板