lj99

导航

 

逻辑运算符

  • System.out.println("a&&b:"+(a&&b));//逻辑与运算:两个变量都为真,结果才为true
    
  • System.out.println("a||b:"+(a||b));//逻辑或运算:两个变量有一个为真,则结果才为true
    
  •  System.out.println("!(a&&b):"+!(a&&b));//如果是真,则变为假,如果为假则为真
    
  • 短路运算

    int c =5;
    boolean d = (c<4)&&(c++<4);
    System.out.println(d);
    System.out.println(c);//c=5,说明在(c<4)是程序短路,后面的c++没有执行
    

位运算

      /*  
        A=  0011 1100
        B=  0000 1101
        -------------------------
        A&B=0000 1100
        A|B=0011 1101
        A^B=0011 0001 异或:两个位置相同则为0 不同则为1
        ~B=1111 0010
        -------------------------
        2*8 = 16   2*2*2*2
        效率极高!!!
        <<   *2 左移乘以2
        >>   /2 右移除以2

        0000 0000    0
        0000 0001    1
        0000 0010    2
        0000 0011    3
        0000 0100    4
        0000 1000    8
        0001 0000    16
         */
        
        System.out.println(2<<3);
posted on 2022-04-29 20:24  神奇的贰  阅读(18)  评论(0)    收藏  举报