Встречается на собеседованиях • сегодня

Что такое intern в классе String

Метод intern() в классе String позволяет добавить строку в пул строк (String Pool), если её там нет, или вернуть ссылку на существующую строку из пула. Это помогает экономить память, так как строки с одинаковым содержимым будут ссылаться на один объект.

Пример:

java
String s1 = new String("hello"); // создаётся новый объект в куче  
String s2 = "hello"; // строка из пула  
String s3 = s1.intern(); // возвращает ссылку на строку из пула  

System.out.println(s1 == s2); // false (разные объекты)  
System.out.println(s2 == s3); // true (один объект в пуле)  

Важно:

  • intern() может быть полезен для оптимизации, но его чрезмерное использование может замедлить работу из-за увеличения пула.
  • Строковые литералы ("...") автоматически попадают в пул.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы