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

Для чего используют String Pool

String Pool (пул строк) — это специальная область в heap-памяти Java, предназначенная для хранения уникальных строковых литералов. Он используется для оптимизации памяти, предотвращая создание дубликатов строк.

Когда создается строка через литерал (String s = "hello"), JVM сначала проверяет String Pool. Если строка уже существует, возвращается ссылка на нее, иначе — добавляется в пул.

Пример:

java
String s1 = "hello";  // Создается в String Pool
String s2 = "hello";  // Использует существующую строку из пула
System.out.println(s1 == s2); // true (ссылки одинаковы)

Для строк, созданных через new String("hello"), можно явно добавить их в пул методом intern().

java
String s3 = new String("hello").intern(); // Попадает в String Pool

Плюсы: экономия памяти, ускорение сравнения через == (но лучше использовать equals()).

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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