У меня есть следующий код:
short myShort = 23948;
byte myByte = (byte)myShort;
Теперь я не ожидал myByte
, чтобы содержать значение 23948. Я бы предположил, что он будет содержать 255 (я считаю, что это наибольшее значение для байта).
Однако он содержит 140, и это заставило меня задуматься, почему; что на самом деле происходит за кулисами?
Обратите внимание, что я не ищу кого-то, кто решит проблему, из-за которой 23948 не может поместиться в байт, меня просто интересует основная реализация