算数运算符
java中有许多种运算符,有算术运算符,赋值运算符,比较运算符,逻辑运算符,三元运算符。。。
这里我写一下容易出错的逻辑运算符,逻辑运算符,它是用于布尔值进行运算的,运算的最终结果为布尔值true或false,
运算符 |
运算规则 |
范例 |
结果 |
& |
与 |
false&true |
False |
| |
或 |
false|true |
True |
^ |
异或 |
true^flase |
True |
! |
非 |
!true |
Flase |
&& |
短路与 |
false&&true |
False |
|| |
短路或 |
false||true |
True |
我们先来总结一下规律:
1 短路与&&:参与运算的两边数据,有false,则运算结果为false;
2 短路或||:参与运算的两边数据,有true,则运算结果为true;
3 逻辑非! : 参与运算的数据,原先是true则变成false,原先是false则变成true。
例1:
int x = 1,y = 1;
if(x++==2 && ++y==2)
{
x =7;
}
System.out.println("x="+x+",y="+y);
X=2,y=1
这个题先让x和2比较,x=1不等于2,&&后面的语句不再执行,所以y=1
例2:
int x = 1,y = 1;
if(x++==1 || ++y==2)
{
x =7;
}
System.out.println("x="+x+",y="+y);
x=7,y=1
此题先拿x和1比较,成立所以不再执行//之后的语句,所以x=7,y=1
这个地方对初学者来说可能有点绕,所以一定要多练习,多思考