У меня есть byte b
, который в Java представляет целые числа со знаком от -128 до +127. Как преобразовать его для представления только (положительных) целых чисел без знака? Я не хочу использовать int
или long
, но 1-байтовое представление и просто сдвигаю биты в b
short
...) - person Makoto   schedule 13.12.20190xFF
к числу, чтобы получить то, что определенно не будет байтом. - person Makoto   schedule 13.12.2019int
). Более того, в Java мне нужно выполнить некоторые операции с этим байтом, как если бы я мог интерпретировать его как беззнаковое (0-255, как и в других языках), но в конечном итоге все еще иметь 8-битное представление. Например: byte b = -120; // Беззнаковые операции. -120 должно быть +8 send(); - person raff5184   schedule 13.12.2019int
, а затем отправить младший байт. Если бы вы делали это только в 8-битном пространстве, вы также потеряли бы те же биты, которые вы маскируете от int. Я делал линейные контрольные суммы и последовательности проверки кадров для различных проектов, и у меня никогда не было проблем с использованием подписанных типов. Можете ли вы привести конкретный пример, когда математика влияет на одно и другое. - person WJS   schedule 13.12.2019