Ответ
Объявление переменной как int в Java означает:
- Размер и диапазон: 32-битное целое число со знаком. Диапазон от
-2,147,483,648до2,147,483,647. - Память: Занимает 4 байта.
- Литералы по умолчанию: Целочисленные литералы (например,
42) по умолчанию имеют типint.
Основные последствия и best practices:
- Риск переполнения: Арифметические операции могут выйти за пределы диапазона, вызвав тихое (silent) переполнение без исключения.
int max = Integer.MAX_VALUE; // 2147483647 int overflow = max + 1; // Станет -2147483648 (Integer.MIN_VALUE) - Выбор типа: Для больших чисел, счетчиков в циклах с большим количеством итераций или идентификаторов используйте
long. - Автоупаковка: В коллекциях (
List<Integer>) происходит автоупаковка вInteger, что влияет на производительность в критичных местах.
Когда использовать int: Для большинства счетчиков, индексов и целочисленных вычислений, где диапазон заведомо ограничен.