Thinking in Java 之移位操作符

来源:互联网 发布:淘宝中差评外包团队 编辑:程序博客网 时间:2024/06/10 02:15

       移位操作符操作的对象也是二进制的“位”,移位操作符只可用来处理整数类型(基本类型的一种)。

       左移位操作符(<<)能按照操作符右侧指定的位数将操作符左边的操作数向左移动(在低位补0)。

      “有符号”右移位操作符(>>)则按照右侧指定的位数将操作符左边的操作数向右移动,

      “有符号”右移位操作符使用“符号扩展”:若符号为正,则在高位插入0;若符号为负,则在高位插入1。

       Java中增加了一种“无符号”右移位操作符(>>>),它使用“零扩展”:无论正负,都在高位插入0。

      

       如果对char,byte,或者short类型的数值进行移位处理,那么在移位进行之前,他们会被转换为int类型。并且得到的结果也是int类型的

       只有数值右端的低五位才有用。这样可以防止我们移位超过int型值所具有的位数。

原创粉丝点击