Ответ
Примитивный тип byte в Java — это 8-битное целое число со знаком (signed). Его диапазон значений:
от -128 до 127 (включительно).
Объяснение: Поскольку один бит используется для знака (дополнительный код), на величину числа остаётся 7 бит.
- Максимальное положительное значение: (2^{7} - 1 = 127).
- Минимальное отрицательное значение: (-2^{7} = -128).
Примеры и важные нюансы:
byte min = -128;
byte max = 127;
// byte overflow = 128; // Ошибка компиляции: несовместимые типы
byte overflow = (byte) 128; // Явное приведение, но происходит переполнение
System.out.println(overflow); // Выведет: -128
// Арифметические операции автоматически приводят byte к int
byte a = 100;
byte b = 50;
// byte c = a + b; // Ошибка компиляции: a + b имеет тип int
byte c = (byte) (a + b); // Корректно, результат 150 после приведения станет -106 из-за переполнения.
Практическое использование: byte применяется для экономии памяти при работе с большими массивами чисел, потоковым вводом-выводом или сырыми двоичными данными.