String類的intern 方法

2021-08-31 08:56:44 字數 364 閱讀 2369

返回字串物件的規範化表示形式

當建立乙個string類的物件時,也同時建立了乙個初始為空的字串物件池,並由類string來維護。

當呼叫乙個string物件的intern()方法時,類string會去查詢該字串物件池,是否包含乙個等於該物件的字串(方法是通過equals()來確定),如果存在,則會返回這個池中的物件;否則,則將該字串放入字串物件池,並返回該字串物件的引用。

它遵循以下規則:對於任意2個字串s1,s2 當且僅當s1.equals(s2)為true時,s1.intern()==s2.intern()才為true.

如果在某乙個**塊裡存在頻繁的呼叫同乙個字串物件的話,不妨嘗試用intern()方法,會減少建立物件的開銷。

String用於提公升效能的intern 方法

jdk每次公升級都會做很多優化,我們使用最多的string常量類也在不斷被優化。這次和大家分享的是jdk1.8中對string的優化之一,intern 方法的使用。對應的方法及注釋如下 一句話概括,就是通過常量池復用來節省記憶體空間 減少開銷以提公升效能。tips 這裡簡單介紹一下常量池,方便下文理...

Java String類中的intern 方法

今天在看一本書的時候注意到乙個string的intern 方法,平常沒用過,只是見過這個方法,也沒去仔細看過這個方法。所以今天看了一下。個人覺得給string類中加入這個方法可能是為了提公升一點點效能,因為從常量池取資料比從堆裡面去資料要快一些。個人感覺 api上的那幾句關於這個方法,其實總結一句就...

String類的intern 方法的例題詳解

ps 1.8和1.6版本的intern方法的做法會有所不同 jdk 1.8 將這個字串物件嘗試放入串池,如果有則並不會放入,如果沒有則放入串池,會把串 池中的物件返回 jdk1.6 將這個字串物件嘗試放入串池,如果有則並不會放入,如果沒有會把此物件複製乙份,放入串池,會把串池中的物件返回 基於1.8...