Я готовлюсь к экзамену SCJP, используя заметки из Интернета.
Согласно моим заметкам, оператор >>
должен быть подписан вправо со смещением знака, вводимого слева. В то время как левый оператор сдвига <<
должен сохранять знаковый бит.
Однако, играя по-другому, я могу сместить знак с помощью оператора <<
(например, Integer.MAX_VALUE << 1
оценивается как -2
, тогда как я никогда не смогу сместить знак с помощью оператора >>
.
Должно быть, я что-то здесь неправильно понимаю, но что?