🚀 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 автоматически кеширует часто используемые значения.
🛠 Кстати, ты можешь изменить границу кеша через JVM-опцию:
-XX:AutoBoxCacheMax=512
📌 Полезно, если у тебя в системе часто используются числа вне стандартного диапазона.
#Java #Performance #JVM #DevTips
@javatg
>>Click here to continue<<