Java String.intern()

Java String.intern()

メソッドintern()は、ヒープメモリにStringオブジェクトの正確なコピーを作成し、それをString定数プールに格納します。

同じ内容の別のStringStringの定数プールに存在する場合、新しいオブジェクトは作成されず、新しい参照は他のString.を指すことに注意してください。

利用可能な署名

public String intern()

@Test
public void whenIntern_thenCorrect() {
    String s1 = "abc";
    String s2 = new String("abc");
    String s3 = new String("foo");
    String s4 = s1.intern();
    String s5 = s2.intern();

    assertFalse(s3 == s4);
    assertTrue(s1 == s5);
}