Встречается на собеседованиях • сегодня
Какие свойства строки позволяют создать String Pool
Строки в Java неизменяемы (immutable), что позволяет безопасно кэшировать их в String Pool. При создании строки через литерал (String s = "hello") JVM сначала проверяет пул на наличие такой строки, и если находит — возвращает ссылку на существующий объект. Это возможно благодаря:
- Иммутабельность — строку нельзя изменить после создания, поэтому кэширование безопасно.
- Интернирование — метод
intern()добавляет строку в пул или возвращает ссылку на существующую. - Хеширование — строки кэшируются по хеш-коду, что ускоряет поиск в пуле.
Пример:
java
String a = "hello"; // попадает в пул
String b = "hello"; // берется из пула
System.out.println(a == b); // true
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы