Java Integer pool. Зачем?

везде читаем, что когда вы определяете Integer в Java от -128 до 127, вместо создания нового объекта он возвращает уже созданный объект.

Я нене вижу смысла делать это, кроме как позволить начинающим программистам сравнивать объекты Integer с== чтобы узнать, совпадают ли они с одним числом, но я думаю, что это плохо, потому что они уверены, что могут сравнить любое целое число с==и также преподает плохую практику на любом языке программирования: сравнивая содержание двухразные' объекты с.==

Есть ли другая причина, по которой это делается? Или это просто плохое решение при разработке языка (на мой взгляд), как необязательная точка с запятой в JavaScript?

РЕДАКТИРОВАТЬ: я вижу здесь, что они объясняют поведение:Почему поведение целочисленного пула констант меняется на 127?

Я спрашиваю, почему они разработали его так, а не почему это происходит.

Ответы на вопрос(2)

Ваш ответ на вопрос