搜尋
首頁Javajava教程為什麼Java中不用「New」關鍵字也能建立字串?

Why Can Strings Be Created Without the 'New' Keyword in Java?

字串:沒有「New」關鍵字的物件

字串儘管是Java 中的對象,但可以在不使用new 關鍵字的情況會建立。若要了解原因,請考慮以下範例:

Object obj = new Object();

此程式碼使用 new 關鍵字建立 Object 類別的實例。然而,在建立字串時,我們使用不同的語法:

String str = "Hello World";

內部字串文字

這種差異的原因在於Java對字串文字的處理。字串文字(例如“Hello World”)被保留,這意味著它們儲存在中央字串池中。每次遇到字串文字時,Java 都會檢查池中是否存在現有實例。如果在池中找到該字串,Java 將傳回對該實例的引用,而不是建立新實例。

考慮以下程式碼:

String a = "abcd";
String b = "abcd";

System.out.println(a == b); // Output: True

因為 a 和 b 都引用相同的字串文字,它們在物理上是相等的(即,它們指向同一個物件)。

帶有「New」的自訂字串

雖然實習有利於提高效率,可以使用 new 建立自訂 String 實例。例如:

String a = new String("abcd");
String b = new String("abcd");

System.out.println(a == b); // Output: False

在本例中,a 和 b 是使用 new 建立的不同 String 物件。

Interning 的好處

Interning String文字提高了效能,因為它消除了創建相同字串的多個實例的需要。當在程式中多次使用字串時,這尤其有用。例如,在以下程式碼中:

for (int i = 0; i <p>字串「Next iteration」由於實踐僅實例化一次,即使它在循環中使用。如果沒有實習,每次循環迭代都需要一個新的 String 實例,這可能會浪費記憶體。 </p>

以上是為什麼Java中不用「New」關鍵字也能建立字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱工具

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。