开发工具与关键技术: MyEclipse 10、Java语法
作者:邓婵
撰写时间:2019年 5月 2日
运算符是一种特定的数学或逻辑操作的符号,而Java中运算符又分为算术运算符,关系运算符,逻辑运算符,赋值运算符和其它运算符。
-
算术运算符(+(相加)、-(相减)、*(乘法)、/(除法)、%(取余)、++(自增)、–(自减))
结果如图下所示
a除以b等于f结果应该为1.2,但输出的结果为1,因为整数/整数=整数,是截断小数取整,而不是四舍五入取整。
% 取余要注意两个整数时 第二个数不能是0。一个或者2个为浮点数,第二个数为0或者0.0时,结果为NaN。第一个数为0或0.0时,结果为0.0
注意:自增(自减)在前面和在后面的区别:
++y(y):先将 y 的值自增(自减)1,然后再在当前表达式中使用 y 的值。
y++(y):先在当前表达式中使用 y 的值,然后再将 y 的值自增(自减)1。 -
关系运算符
检查左操作数的值是否大于右操作数的值,如果是那么条件为真
= 检查左操作数的值是否大于或等于右操作数的值,如果是那么条件为真
< 检查左操作数的值是否小于右操作数的值,如果是那么条件为真
<= 检查左操作数的值是否小于或等于右操作数的值,如果是那么条件为真
== 检查如果两个操作数的值是否相等,如果相等则条件为真
!= 检查如果两个操作数的值是否相等,如果值不相等则条件为真
结果如图下所示:
注意:Java中 == 和 equals()方法的区别
== 在基本数据类型的时候就是比较值是否相同,在引用类型时是比较地址
equals 用于判断引用类型的值
例子:比较str与strA是否相等
结果如图下所示:
- 逻辑运算符
&& 与,前后两个操作数必须都是true才返回true,否则返回false
& 不短路与,作用与&&相同,但不会短路。
|| 称为逻辑或操作符。如果任何两个操作数任何一个为真,条件为真
| 不短路或,作用与
! 称为逻辑非运算符。用来反转操作数的逻辑状态。如果条件为true,则逻辑非运算符将得到false
^ 异或,当两个操作数不同时才返回true,如果两个操作数相同则返回false
例子:
boolean boolValue1 = true;
boolean boolValue2 = false;
System.out.println("a && b ="+(boolValue1 && boolValue2));
System.out.println("a || b ="+(boolValue1 || boolValue2));
System.out.println("!(a && b)=" +!(boolValue1 && boolValue2));
System.out.println("a^b="+(boolValue1 ^ boolValue2));
结果如图下所示:
&&短路与&不短路的区别:
这里&&短路输出结果为10,因为使用&&运算符只要前面不满足条件就不往下判断,而&不短路输出结果为11,因为使用&运算符不管你前面满不满足它都要进行一遍,然后输出最后的结果
相关代码如下:
4. 赋值运算符
= 简单的赋值运算符,将右操作数的值赋给左侧操作数
+= 加和赋值操作符,它把左操作数和右操作数相加赋值给左操作数
-= 减和赋值操作符,它把左操作数和右操作数相减赋值给左操作数
*= 乘和赋值操作符,它把左操作数和右操作数相乘赋值给左操作数
/= 除和赋值操作符,它把左操作数和右操作数相除赋值给左操作数
%= 取余和赋值操作符,它把左操作数和右操作数取余后赋值给左操作数
- 其它运算符
1) 三目运算符(?:)
三目运算符也被称为三元运算符。该运算符有3个操作数,并且需要判断布尔表达式的 值。该运算符的主要是决定哪个值应该赋值给变量。
例子:
int intValue = 5;
System.out.println((intValue > 4) ? “5>4” : “5<4”);
这里结果输出5>4,因为三目运算符是判断前面的条件是真是假,如果为真输出前面一段,如果为假输出后面一段
2)instanceof 运算符
用来判断引用类型是否属于某个类型或者它的继承类型
例子:写一个变量判断该变量是否是String类型的,如果是就返回true,不是就返回falae
String str1=“Name”;
boolean bool=str1 instanceof String;
System.out.println(bool);
输出结果如下图所示: