/
spirzen
/
it-code-examples
Обзор
Документация
Войти
/
spirzen
/
it-code-examples
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
examples/java/java-503-23-008/main.java
28 строк
1 KB
Spirzen
Code migration pack
09 июн 2026, 01:41
09 июн 2026, 01:41
cebc284
Код
Авторство
О чём код?
public class StringPoolExample { public static void main(String[] args) { // Строки-литералы разделяют один объект в пуле String s1 = "hello"; String s2 = "hello"; System.out.println(s1 == s2); // true — одна и та же ссылка // Создание через new — новый объект в куче String s3 = new String("hello"); String s4 = new String("hello"); System.out.println(s3 == s4); // false — разные объекты // Принудительное добавление в пул String s5 = s3.intern(); System.out.println(s1 == s5); // true — теперь в пуле // Демонстрация экономии памяти List<String> literals = new ArrayList<>(); for (int i = 0; i < 10000; i++) { literals.add("common-string"); // все ссылаются на один объект } List<String> news = new ArrayList<>(); for (int i = 0; i < 10000; i++) { news.add(new String("common-string")); // 10000 отдельных объектов } } }