Java中位运算(移位、位与、或、异或、非) 的简单实例

2016-02-19 11:02 3 1 收藏

今天给大家分享的是由图老师小编精心为您推荐的Java中位运算(移位、位与、或、异或、非) 的简单实例,喜欢的朋友可以分享一下,也算是给小编一份支持,大家都不容易啊!

【 tulaoshi.com - 编程语言 】

代码如下:

public class Test {
    public static void main(String[] args) {
        // 1、左移( )
        // 0000 0000 0000 0000 0000 0000 0000 0101 然后左移2位后,低位补0://
        // 0000 0000 0000 0000 0000 0000 0001 0100 换算成10进制为20
        System.out.println(5 2);// 运行结果是20

        // 2、右移( ) 高位补符号位
        // 0000 0000 0000 0000 0000 0000 0000 0101 然后右移2位,高位补0:
        // 0000 0000 0000 0000 0000 0000 0000 0001
        System.out.println(5 2);// 运行结果是1

        // 3、无符号右移( ) 高位补0
        // 例如 -5换算成二进制后为:0101 取反加1为1011
        // 1111 1111 1111 1111 1111 1111 1111 1011
        // 我们分别对5进行右移3位、 -5进行右移3位和无符号右移3位:
        System.out.println(5 3);// 结果是0
        System.out.println(-5 3);// 结果是-1
        System.out.println(-5 3);// 结果是536870911

        // 4、位与( & )
        // 位与:第一个操作数的的第n位于第二个操作数的第n位如果都是1,那么结果的第n为也为1,否则为0
        System.out.println(5 & 3);// 结果为1
        System.out.println(4 & 1);// 结果为0

        // 5、位或( | )
        // 第一个操作数的的第n位于第二个操作数的第n位 只要有一个是1,那么结果的第n为也为1,否则为0
        System.out.println(5 | 3);// 结果为7

        // 6、位异或( ^ )
        // 第一个操作数的的第n位于第二个操作数的第n位 相反,那么结果的第n为也为1,否则为0
         System.out.println(5 ^ 3);//结果为6 

        // 7、位非( ~ )
        // 操作数的第n位为1,那么结果的第n位为0,反之。
        System.out.println(~5);// 结果为-6 
    } 
}

来源:https://www.tulaoshi.com/n/20160219/1596393.html

延伸阅读
标签: Web开发
JavaScript中逻辑“非”运算符 (!)是对一个表达式执行逻辑非。 使用方法: result = !expression 其中result是任何变量。 expression是任何表达式。 JavaScript中逻辑“非”运算符说明 下面的表举例说明了 result 是如何决定的。 如果 expression 是 则 result 是 如果 expression 是 则 result 是 True False False True 所有一元运算...
标签: 怀孕
妊娠期间,孕妈妈简直成了个“玻璃人”,一切的一切都要小心翼翼,稍有不当,就可能出现怪问题,就拿睡姿来说,平常人怎么睡都可以,可孕妈妈不行。 那些习惯于仰睡的孕妈妈可要注意了,小心“仰卧位低血压综合征”,这是一种在特定的仰卧位时导致的血压急骤下降的一系列症候,甚至会导致休克,一般症状轻的孕妈妈临床...
   住家旺位也就是财位,是住宅宅气最旺的方位(卦位),也就是星气下降,地气上升,集结相交之点。通常是在客厅,其主要条件为清静、安定,不可以是通道的动线。一般而言旺位是在客厅进门的对角线方位,这包括以下三种情形: (1)如果住宅门开左边时,财位就在右边对角线顶端上: (2)如果住宅门开右边、...
标签: windows 操作系统
      现在的64位操作系统还没有中文版,加之受兼容性问题的影响,组建独立多系统显然已成为最佳的解决方案。很多朋友在配置64位硬件平台时已购入了SATA硬盘,但同时拥有SATA和PATA硬盘的朋友也不在少数,下面就来说明怎样在这两块硬盘上构建32位和64位Windows XP的独立双系统。 一.设置SATA硬盘 说明:本次...
用位运算实现加法也就是计算机用二进制进行运算,32位的CPU只能表示32位内的数,这里先用1位数的加法来进行,在不考虑进位的基础上,如下 代码如下: 1 + 1 = 0 1 + 0 = 1 0 + 1 = 1 0 + 0 = 0 很明显这几个表达式可以用位运算的“^”来代替,如下 代码如下: 1 ^ 1 = 0 1 ^ 0 = 1 0 ^ 1 = 1 0 ^ 0 = 0 这样我们就完成了简单...

经验教程

605

收藏

26
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部