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