По какой-то необъяснимой причине примитивный тип byte
подписан на Java. Это означает, что действительные значения равны -128..127 вместо обычного диапазона 0..255, представляющего 8 значащих бит в байте (без знакового бита).
Это означает, что весь код манипуляции байтом обычно выполняет целочисленные вычисления и в конечном итоге маскирует последние 8 бит.
Мне было интересно, есть ли сценарий реальной жизни, где примитивный тип Java byte
подходит идеально или если это просто совершенно бесполезное дизайнерское решение?
EDIT: единственным фактическим вариантом использования был однобайтовый заполнитель для собственного кода. Другими словами, нельзя манипулировать байтом внутри кода Java.
EDIT: теперь я увидел место, где внутренняя сплошная петля должна была делить на 7 (числа 0..32), так что таблица поиска могла бы быть выполнена с байтами в качестве типа данных, поэтому использование памяти могло бы оставаться низким, думая о Использование кеша L1. Это не относится к подписанному/неподписанному, но относится к фактическому использованию.