关系运算符和逻辑运算符
一、关系运算符
关系运算符最终结果:要么是true要么是false
代码练习
publicclassTestOpe08{publicstaticvoidmain(String[] args){//>,<,>=,<=,==,!=//关系运算符最终结果:要么是true要么是falseSystem.out.println(4>9);//falseSystem.out.println(4<9);//trueSystem.out.println(4>=9);//falseSystem.out.println(4<=9);//trueSystem.out.println(4==9);//falseSystem.out.println(4!=9);//trueSystem.out.println((5<9)!=(6==8));//true}
}
二、逻辑运算符
&,|, &&,||,!,^
逻辑运算符:进行逻辑运算的,运算符左右连接的都是 布尔类型的操作数,最终表达式的结果是布尔值:要么是true,要么false
代码练习
publicclassTestOpe09{publicstaticvoidmain(String[] args){// 逻辑与 :& 规律:只要有一个操作数是false,那么结果一定是falseSystem.out.println(true&true);
System.out.println(true&false);
System.out.println(false&false);
System.out.println(false&true);// 短路与:&& 规律:效率高一些,只要第一个表达式是false,那么第二个表达式就不用计算了,结果一定是falseSystem.out.println(true&&true);
System.out.println(true&&false);
System.out.println(false&&false);
System.out.println(false&&true);// 逻辑或:| 规律:只要有一个操作数是true,那么结果一定是trueSystem.out.println(true|true);
System.out.println(true|false);
System.out.println(false|false);
System.out.println(false|true);// 短路或:|| 规律:效率高一些,只要第一个表达式是true,那么第二个表达式就不用计算了,结果一定是trueSystem.out.println(true||true);
System.out.println(true||false);
System.out.println(false||false);
System.out.println(false||true);//逻辑非: ! 规律:相反结果System.out.println(!true);//falseSystem.out.println(!false);//true//逻辑异或: ^ 规律:两个操作数相同,结果为false,不相同,结果为trueSystem.out.println(true^true);
System.out.println(true^false);
System.out.println(false^false);
System.out.println(false^true);
}
}
再做一个加深的练习:看代码 说结果:
publicclassTestOpe10{publicstaticvoidmain(String[] args){inti=8;
System.out.println((5>7)&&(i++==2));//falseSystem.out.println(i);//8inta=8;
System.out.println((5>7)&(a++==2));//falseSystem.out.println(a);//9intm=8;
System.out.println((5<7)&&(m++==2));//falseSystem.out.println(m);//9intb=2;
System.out.println((5<7)&(b++==2));//trueSystem.out.println(b);//3intc=2;
System.out.println((5<7)&(++c==2));//falseSystem.out.println(c);//3}
}







