Why Java doesn't support <<< operator

Java adds the operator ">>>" to perform logical right shifts, but because the logical and arithmetic left-shift operations are identical, there is no "<<<" operator in Java.

from Shifts in Java...


Why doesn't Java support the <<< (unsigned left shift) operator, but does support the >>> (unsigned right shift) operator?

Because a (hypothetical) unsigned left shift operator would do exactly the same thing as the existing left shift operator.

(Hint: multiplying a binary integer by 2 entails left shifting by 1 and making the rightmost bit zero whether the integer representation is signed or unsigned. Write some examples on a piece of paper and test it for yourself.)


Why doesn't Java support the <<< (unsigned left shift) operator, but does support the >>> (unsigned right shift) operator?

That is because when you left shift the bits , the leftmost bit (AKA SIGNED Bit) is lost anyways.

Since unsigned left shift operator would do exactly the same thing as the existing left shift operator, we don't have it.

Tags:

Java

Oop