知识总结:
1.“与”
& : 只要两边的boolean表达式结果有一个是false,那么结果为false
只要两边都为true,结果才是true
2.“或”
| : 两边只要有一个true,结果为true
两边都是false,结果为false
3.“异或”
^ : 就和 | 有点不一样,true^true=false
两边结果相同结果是false
两边结果不同是true
4.“非”
!: !true=false
5:&和&&特点:
&:无论左边是真是假右边都运算
&&:当左边是假时右边不运算
6:|和||特点:
|:两边都运算
||:当左边为true时右边不运算
练习:
编写了一个小程序来验证上面的知识:
package com.itheima;
public class logicDemo //创建一个类
{
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int a = 3; //定义一个int型变量a赋值为3
int b = 4; //定义一个int型变量b赋值为4
// 定义boolean型的变量,将应用逻辑运算符后的返回值赋给result
boolean result1 = ((a>b)&(a!=b));
boolean result2 = ((a>b)|(a!=b));
boolean result3 = ((a>b)^(a!=b));
boolean result4 = (!(a!=b));
boolean result5 = ((a>b)&&(a!=b));
boolean result6 = ((a>b)||(a!=b));
//打印返回值
System.out.println(result1);//结果:flase 只要两边的boolean表达式结果有一个是false,那么结果为false
System.out.println(result2);//结果:true 两边只要有一个true,结果为true
System.out.println(result3);//结果:true 两边结果不同是true
System.out.println(result4);//结果:false 非真即假
System.out.println(result5);//结果:flase 当左边是假时右边不运算
System.out.println(result6);//结果:true 两边只要有一个true,结果为true
}
}
心得体会:
1.&会判断两个表达式,其中有一个为false则结果为false;
而&&判断第一个表达式为false时就不会去判断第二个表达式,节省计算机判断的次数,这种判断方法称之为:短路
2.^表示异或,即两边结果不一样时为true,两边结果一样时为false