Java String intern() 方法返回字符串對象的規範表示。
用法:
string.intern()
這裏,string
是String
類的對象。
參數:
intern()
方法不接受任何參數。
返回:
- 返回字符串的規範表示
什麽是 Java 字符串實習?
String interning 確保所有具有相同內容的字符串使用相同的內存。
假設,我們這兩個字符串:
String str1 = "xyz";
String str2 = "xyz";
由於str1
和str2
具有相同的內容,因此這兩個字符串將共享相同的內存。 Java 自動實習字符串文字。
但是,如果您使用 new
關鍵字創建字符串,這些字符串將不會共享相同的內存。例如,
class Main {
public static void main(String[] args) {
String str1 = new String("xyz");
String str2 = new String("xyz");
System.out.println(str1 == str2); // false
}
}
從這個例子可以看出,str1
和str2
的內容相同。但是,它們並不相等,因為它們不共享相同的內存。
在這種情況下,您可以手動使用intern()
方法,以便為具有相同內容的字符串使用相同的內存。
示例:Java 字符串 intern()
class Main {
public static void main(String[] args) {
String str1 = new String("xyz");
String str2 = new String("xyz");
// str1 and str2 doesn't share the same memory pool
System.out.println(str1 == str2); // false
// using the intern() method
// now both str1 and str2 share the same memory pool
str1 = str1.intern();
str2 = str2.intern();
System.out.println(str1 == str2); // true
}
}
如您所見,str1
和str2
的內容相同,但它們最初並不相等。
然後我們使用intern()
方法,以便str1
和str2
使用相同的內存池。在我們使用intern()
, str1
和str2
之後是相等的。
相關用法
- Java String indent()用法及代碼示例
- Java String indexOf()用法及代碼示例
- Java String isEmpty()用法及代碼示例
- Java String valueOf()用法及代碼示例
- Java String split()用法及代碼示例
- Java String strip()用法及代碼示例
- Java String getChars()用法及代碼示例
- Java String substring()用法及代碼示例
- Java String replace()用法及代碼示例
- Java String contains()用法及代碼示例
- Java String regionMatches()用法及代碼示例
- Java String copyValueOf()用法及代碼示例
- Java String toString()用法及代碼示例
- Java String endsWith()用法及代碼示例
- Java String lines()用法及代碼示例
- Java String repeat()用法及代碼示例
- Java String hashCode()用法及代碼示例
- Java String lastIndexOf()用法及代碼示例
- Java String equals()用法及代碼示例
- Java String replaceAll()用法及代碼示例
注:本文由純淨天空篩選整理自 Java String intern()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。