与 与 短路与
或 与 短路或
非 与 异或
package dayOne;
//逻辑运算符
public class Operator2 {
public static void main(String[] args) {
/**
* 逻辑运算符:&(逻辑与) &&(短路与) |(逻辑或) ||(短路或) !(非) ^(异或)
* 描述:连接的是两个及其以上的boolean类型表达式
* &:所有的条件全部满足的时候返回true
* |:所有的条件满足一个则返回true
* !:取反
* ^:一个为真一个为假
/
/*
* &与&&区别,|与||区别
* &:不管左边的表达式是否为真,右边都会参与运算
* &&:有短路功能:左边的表达式为true的时候,右边的参与运算
* 左边的表达式为false的时候,右边的不参与运算
* |:不管左边的表达式是否为真,右边的都会参与运算
* ||:有短路功能:左边的表达式为true,右边不参与运算
* 左边的表示式为假的时候,右边参与运算
*/
int a=10,b=20,c=30;
System.out.println(a<b ^++c>b);//两真 false
System.out.println(a<b ^++c<b);//一假一真 true
System.out.println(a>b ^++c<b);//两假 false
System.out.println(a–>c|++c<b|b–<c);//true
System.out.println(a);//9
System.out.println(b);//19
System.out.println©;//34
System.out.println("--------------");
boolean flag=true;
System.out.println(flag!=true);//false
System.out.println(!flag);//false
System.out.println("-----------------");
int i=6,j=8;
System.out.println(i<j||j++>i);//true
System.out.println(j);//8
System.out.println(i>j||j++>i);//true
System.out.println(j);//9
System.out.println(i<j && j++>i);//true
System.out.println(j);//9
}
}