//短路与 &&
int x=8;
int y=9;
System.out.println((++x==y)&&(++x!=y));//true
System.out.println(x);//10
//短路与 &&
int x=8;
int y=9;
System.out.println( (++x!=y)&&(++x==y));//false
System.out.println(x);//9
//单目与 &
int x=8;
int y=9;
System.out.println((++x==y)&(++x!=y));//true
System.out.println(x);//10
//单目与 &
int x=8;
int y=9;
System.out.println( (++x!=y)&(++x==y));//false
System.out.println(x);//10
&&和&的区别:
&&具有短路功能,当&&左边表达式为false的时候,直接判断整个&&运算结果为false, &&右边不再进行计算
&不具有短路功能,不管&左边表达式的结果为true还是false,&右边表达式都要进行计算
||和|的区别:
||具有短路功能,当||左边表达式为true的时候,直接判断整个||运算结果为true,||右边不 再进行计算
|不具有短路功能,不管|左边表达式的结果为true还是false,|右边表达式都要进行计算
//短路或 ||
int x=8;
int y=9;
System.out.println((++x==y)||(++x!=y));//true
System.out.println(x);//9
//短路或 ||
int x=8;
int y=9;
System.out.println( (++x!=y)||(++x==y));//false
System.out.println(x);//10
//单目或 |
int x=8;
int y=9;
System.out.println((++x==y)|(++x!=y));//true
System.out.println(x);//10
//单目或 |
int x=8;
int y=9;
System.out.println( (++x!=y)|(++x==y));//false
System.out.println(x);//10