06:44
1,0×
00:00/06:44
526,2 тыс смотрели · 4 года назад
1 месяц назад
🚀 Java API Tip — Integer.valueOf() и кеширование
🚀 Java API Tip — Integer.valueOf() и кеширование 🚀 Знаешь ли ты, что Integer.valueOf(int) не всегда создаёт новый объект? 📦 Значения в диапазоне от -128 до 127 кэшируются! Это значит, что: Integer a = Integer.valueOf(100); Integer b = Integer.valueOf(100); System.out.println(a == b); // 👉 true (один и тот же объект) Но: Integer x = Integer.valueOf(200); Integer y = Integer.valueOf(200); System.out.println(x == y); // 👉 false (два разных объекта) 🔍 Почему так? Чтобы повысить производительность и сэкономить память, Java автоматически кеширует часто используемые значения...
1 месяц назад
☕ Java-задача: что выведет этот код с `Integer` и
☕ Java-задача: что выведет этот код с `Integer` и `==`? public class Main { public static void main(String[] args) { Integer a = 100; Integer b = 100; Integer x = 1000; Integer y = 1000; System.out.println(a == b); System.out.println(x == y); } } 🔍 Варианты: • a) true, true • b) false, false • c) true, false • d) false, true 💡 Разбор: В Java объект Integer в диапазоне от -128 до 127 кешируется. Это значит: - Integer a = 100; и Integer b = 100; будут ссылаться на один и тот же объект - Integer x = 1000; и Integer y = 1000; — разные объекты, хоть и равны по значению А оператор == проверяет ссылочное равенство, а не значение...