Java运算符中有分:算术运算符、关系运算符、逻辑运算符、赋值运算符、其他运算符
在算术运算符中有:
+ :加法 相加运算符两侧的值。
:减法 左操作数减去右操作数。
* :乘法 相乘操作符两侧的值。
/ :除法 左操作数除以右操作数。
% :取余 左操作数除以右操作数的余数。
++ :自增: 操作数的值增加1。
:自减: 操作数的值减少1。
算术运算符很简单,小学就开始接触的加减乘除取余的运算方法,这里++ 和 – 是自增自减的符号,一般用在循环上比较多。
下面我简单的演示一下代码
(见下图代码)
结果:
见上图的演示代码,在两个整数相除的时候它会舍去小数点后面的数,而不是四舍五入
自增++ 和 自减 -- 中它们放置的前后位置的效果也是不一样的,
如果++(--)在值的前面:先将 值自增(自减)1,然后再在当前表达式中使用值。
如果++(--)在值的后面:先在当前表达式中使用 对象的值,然后再将 y 的值自增(自减)
如下图代码演示可以看出++A自增后再输出加1,B++则是直接输出本身,执行第二遍才会进行自增加1;
结果:
关系运算符
> :检查左操作数的值是否大于右操作数的值,如果是那么条件为真。
>= :检查左操作数的值是否大于或等于右操作数的值,如果是那么条件为真。
< :检查左操作数的值是否小于右操作数的值,如果是那么条件为真。
<= :检查左操作数的值是否小于或等于右操作数的值,如果是那么条件为真。
== :检查如果两个操作数的值是否相等,如果相等则条件为真。
!= : 检查如果两个操作数的值是否相等,如果值不相等则条件为真。
下图代码演示,当判断是真时,返回来的是true,否则为false:
结果:
逻辑运算符
&& :与前后两个操作数必须都是true才返回true,否则返回false
& :不短路与,作用与&&相同,但不会短路。
|| :称为逻辑或操作符。如果任何两个操作数任何一个为真,条件为真。
| :不短路或,作用与
! :称为逻辑非运算符。如果条件为true,则逻辑非运算符将得到false。
^ :异或,当两个操作数不同时才返回true,如果两个操作数相同则返回false。
下图代码演示
结果:
赋值运算符
= :简单的赋值运算符,将右操作数的值赋给左侧操作数。
+=: 加和赋值操作符,它把左操作数和右操作数相加赋值给左操作数。
=: 减和赋值操作符,它把左操作数和右操作数相减赋值给左操作数。
*=: 乘和赋值操作符,它把左操作数和右操作数相乘赋值给左操作数。
/=: 除和赋值操作符,它把左操作数和右操作数相除赋值给左操作数。
%=: 取余和赋值操作符,它把左操作数和右操作数取余后赋值给左操作数。
代码演示:
赋值都是从右边的值赋值给左边。
结果:
其他运算符(三目运算符 、instanceof 运算符 )
三目运算符:也被称为三元运算符。该运算符有3个操作数,并且需要判断布尔表达式的 值。该运算符的主要是决定哪个值应该赋值给变量
格式:
variable x = (expression) ? value if true : value if false
三目运算符代码演示(如下图)
见下图,三木运算符判断若条件为真返回第一个(a>5) 否则返回第二个(a<5)
结果:
instanceof 运算符:
该运算符用于操作对象实例,检查该对象是否是一个特定类型(类类型或接口类型)。
见下图:
结果: