Для уточнения типа float используется символ f, как уточнить тип byte?

Для уточнения типа float используется символ f,

float value = 1f;

как уточнить тип byte?

пробовал

byte isDelete = (b)?1:0;//ошибка
byte isDelete = (b)?1b:0b;//ошибка

Ответы (1 шт):

Автор решения: StateItPrimitive

Начиная с 8ой версии java выделен специальный вид бинарных литералов (binary literals):

byte variable1 = 0b00000001;
byte variable2 = 0b11111111;

При этом, вы также можете пользоваться шестнадцатеричными летералами:

byte variable1 = 0b01;
byte variable2 = 0xFF;

Тоже самое относится и к целочисленным литералам (вопреки указанному вами):

byte variable1 = -128;
byte variable2 = 127;

Очевидно, что в случае превышения максимально допустимого значения в рамках типа byte (256 значений, которые накладываются на следующий целочисленный интервал: [-128, 127]), то вы получите ошибку на этапе компиляции:

byte variable = 128; // compilation error: incompatible types: possible lossy conversion from int to byte
→ Ссылка