| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: Общие вопросы > Нужна помощь в пуле строк в Java |
| Автор: Sandeepkamra 14.7.2022, 15:38 | ||||
| Всем привет, Я провел исследование String POOL в Java https://www.scaler.com/topics/java/string-pool-in-java/ и у меня есть сомнения, что я создал 2 строки в пуле строк без использования нового ключевого слова, как показано ниже.
Я делаю еще один, соединяя более двух строк, как показано на рисунке.
результат обманчив. Мне нужно знать цель результата, связана ли она с неизменностью, т.е. состояние строки не может быть изменено. Ваша помощь будет оценена по достоинству. Заранее спасибо. |
| Автор: LSD 22.7.2022, 17:42 | ||
Строковые литералы всегда создаются в пуле.
это будет создано в пуле. При конкатенации строк неявно создается StringBuilder которым конкатенируются строки и у которого вызывается toString() это всегда создает новую строку. Так что s3 это новая строка не в пуле и == s+s1 тоже новая строка, не s3. |