java Day05-1

逻辑运算符

  • 案例一

    package operator;
    
    //逻辑运算符
    public class Demo05 {
    
        public static void main(String[] args) {
            //与    或    非
            boolean a = true;
            boolean b = false;
    
            System.out.println("a && b:"+(a&&b)); //逻辑与运算:两个变量都为真,结果为ture
            System.out.println("a || b:"+(a||b)); //逻辑或运算:两个变量有一个为真,则结果为ture
            System.out.println("! (a && b) :"+!(a&&b)); //如果是真,则变为假,如果是假则变为真
    
            //短路运算
            int c = 5;
            boolean d = (c<4)&&(c++<4);
            System.out.println(d);
            System.out.println(c);
        }
    }
    
    
  • 答案一

    a && b:false
    a || b:true
    ! (a && b) :true
    false
    5

位运算

  • 案例

    package operator;
    
    public class Demo06 {
        public static void main(String[] args) {
            /*
            A = 0011 1100
            B = 0000 1101
            ------------------------------------------------
            A&B = 0000 1100  (一位位对比 00=0 10=0 01=0 11=1)
            A|B = 0011 1101  (00=0 01=1 10=1 11=1)
            A^B = 0011 0001 (相同为0,不同为1)
            ~B = 1111 0010  (取反)
    
            2*8 = 16 怎么最快
            <<  //左移  *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);
        }
    }
    
    
  • 答案

    16

posted @ 2026-03-29 13:10  固执的小织女  阅读(2)  评论(0)    收藏  举报