为什么不是Java支持<<<
(无符号左移)运算符,但不支持>>>
(无符号右移)运算符?
Answer 1:
Java的添加操作“>>>”来执行逻辑右移,但由于逻辑和算术左移操作是相同的 ,有没有在java“<<<”操作。
从Java中班次...
Answer 2:
为什么不是Java支持
<<<
(无符号左移)运算符,但不支持>>>
(无符号右移)运算符?
因为(假设的)无符号左移运算会做同样的事情与现有向左移位运算符。
(提示:乘以2的二进制整数需要通过1左移,使最右边的位零整数表示是否有符号或无符号的写在一张纸上的一些实施例和测试它自己。)。
Answer 3:
为什么不是Java支持<<<(无符号左移)运算符,但不支持>>>(无符号右移)运算符?
这是因为当你离开的位移位,最左边的位(AKA符号位)的反正丢失。
由于无符号左移位运算符会做同样的事情与现有向左移位运算符,我们没有它。
Answer 4:
我认为这是一个设计错误。 在<<不是算术移位。 如果你这样做<<是应该乘2
0xF0FFFFFF << 4
它返回一个正数! 负数乘以2不应该得到一个正数。 在<<是做<<<工作。
文章来源: Why Java doesn't support <<< oprerator