Когда мы должны использовать метод интерна String для литералов String

Согласно сСтрока # стажер (), intern метод должен возвращать строку из пула строк, если строка найдена в пуле строк, в противном случае новый объект строки будет добавлен в пул строк и будет возвращена ссылка на эту строку.

Итак, я попробовал это:

String s1 = "Rakesh";
String s2 = "Rakesh";
String s3 = "Rakesh".intern();

if ( s1 == s2 ){
    System.out.println("s1 and s2 are same");  // 1.
}

if ( s1 == s3 ){
    System.out.println("s1 and s3 are same" );  // 2.
}

Я ожидал чтоs1 and s3 are same будет напечатан как s3 интернирован, иs1 and s2 are same не будет напечатан. Но результат: обе строки напечатаны. Это означает, что по умолчанию строковые константы интернированы. Но если это так, то зачем намintern метод? Другими словами, когда мы должны использовать этот метод?

Ответы на вопрос(13)

Ваш ответ на вопрос