Fury Java
219 subscribers
16 photos
3 links
Красим джейсоны и повышаем надои с яростной джавой 🤗
Реальные кейсы из практики, задачи с собесов, теоретические нюансы

🫨 никаких бесполезных мемов
🥱 никаких тупых постов из-под chatGPT

Чат: https://t.me/fury_java_chat
Автор: https://t.me/Ldv236
Download Telegram
Channel created
Джавистам привет!
В
се с пелёнок знают о существовании String Pool 🏊‍♀️
Полезная вещь для экономии памяти. Но единственный ли это пул в java?

В Integer, том самом классе-обертке для самого используемого примитива, есть внутренний класс IntegerCache - пул целых чисел в промежутке [-128; 127], так как в большинстве случаев используются числа как раз в этих пределах. Он объявлен как private static. В этом внутреннем классе кэшированные объекты находятся в массиве cache[].

Кэширование выполняется при первом использовании класса-обертки. После этого вместо создания нового экземпляра (кроме явного использования конструктора, конечно), используются кэшированные объекты, JVM берет их из пула✍🏻

⬇️⬇️⬇️
И каверзный вопрос (помним про подготовку к собеседованиям) - а можно ли (и как) изменить диапазон этого пула, если мы хотим оптимизировать использование чисел, скажем, не до 127, а до 200? а? Пишите в комментах
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥54🤔2