JAVA 运算符
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
开发工具与关键技术:eclipsel
作者:曾维嘉
撰写时间:2021年02月10日
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Java运算符分为以下几种:
- 算数运算符
- 关系(比较)运算符
- 逻辑运算符
- 赋值运算符
- 其他运算符
- 位运算符(了解)
- 算数运算符
操作符 |
描述 |
+ |
加法-相加运算符两侧的值 |
- |
减法-左操作数减去右操作数 |
* |
乘法-相乘操作符两侧的值 |
/ |
除法-左操作数除以右操作数的余数 |
% |
取余-做操作数除以右操作数的余数 |
++ |
自增:操作数的值增加1 |
-- |
自减:操作数的值减少1 |
注意:自增(自减)在前面和后面的区别:
- ++y(--y):先将y的值自增(自减)1,然后再在当前表达式中使用y的值
- y++(y--):先在当前表达式中使用y的值,然后再将y的值自增(自减)1
- 关系(比较)运算符
运算符 |
描述 |
> |
检查左操作数的值是否大于右操作数的值,如果是那么条件为真 |
>= |
检查左操作数的值是否大于或等于右操作数的值,如果是那么条件为真 |
< |
检查左操作数的值是否小于右操作数的值,如果是那么条件为真 |
<= |
检查左操作数的值是否小于右操作数的值,如果是那么条件为真 |
== |
检查如果两个操作数的值是否相等,如果相等则条件为真 |
!= |
检查如果两个操作数的值是否相等,如果值不相等则条件为真 |
注意:Java中==和equals()方法的区别
- ==在基本数据类型的时候就是比较值是否相同,在引用类型时是比较地址
- equals用于判断引用类型的值
3.逻辑运算符
操作符 |
描述 |
&& |
与,前后两个操作数必须都是true才返回true,否则返回false |
& |
不短路与,作用与&&相同,但不会短路 |
|| |
称为逻辑或操作符。如果任何两个操作数任何一个为真,条件为真 |
| |
不短路或,作用与 |
! |
称为逻辑非运算符。用来反转操作数的逻辑状态。如果条件为true,则逻辑非运算符将 得到false |
^ |
异或,当两个操作数不同时才返回true,如果两个操作数相同则返回false |
- 赋值运算符
操作符 |
描述 |
= |
简单地赋值运算符,将右操作数的值赋给左侧操作数 |
+= |
加和赋值操作符,它把左操作数和右操作数相加赋值给左操作数 |
-= |
减和赋值操作符,它把左操作数和右操作数相减赋值给左操作数 |
*= |
乘和赋值操作符,它把左操作数和右操作数相乘赋值给左操作数 |
/= |
除和赋值操作符,它把左操作数和右操作数相除赋值给左操作数 |
%= |
取余和赋值操作符,它把左操作数和右操作数取余后赋值给左操作数 |
- 其他运算符
- 三目运算符(?:)
三目运算符也被称为三元运算符。该运算符有3个操作数,并且需要判断布尔表达式的值。该运算符的主要决定哪个值应该赋值给变量。
格式:variable x = (expression) ? value if true : value if false
- instanceof运算符
该运算符用于操作对象实例,检查对象是否一个特定类型(类类型或接口类型)。
格式:(object reference varialbe) instanceof (class/interface type)
- 为运算符(了解)
操作符 |
描述 |
& |
如果相对应位都是1,则结果为1,否则为0 |
| |
如果相对应位都是0,则结果为0,否则为1 |
^ |
如果相对应位值相同,则结果为0,否则为1 |
~ |
按位取反运算符翻转操作数的每一位,即0变成1,1变成0 |
<< |
按位左移运算符。左操作数按位左移右操作数指定的位数 |
>> |
按位右移运算符。左操作数按位右移右操作数指定的位数 |
>>> |
按位右移补零操作符。左操作数的值按右操作数指定的位数右移,移动得到的空位以零 填充 |