关于java运算符以及优先级的整理
关于java运算符以及优先级的整理
一.基本运算符
算术运算符: + , – , * , / , % , ++ , —
赋值运算符: =
关系运算符: > , < , >= , <= , == ,!= instanceof [ instanceof是Java中的二元运算符,左边是对象,右边是类;当对象是右边类或子类所创建对象时,返回true;否则,返回false。]
逻辑运算符:&& , || , !
位运算符:&,| ,^ , ~ , >> , << , >>>
条件运算符 : ?, :
扩展赋值运算符:+= , -= ,*= , /=
1.算术运算符
| 运算符 | 解释 |
|---|---|
| + | 加 |
| – | 减 |
| * | 乘 |
| / | 除 |
| % | 取余 |
注:
1、前缀自增自减法(++a,–a):先进行自增或者自减运算,再进行表达式运算。
2、后缀自增自减法(a++,a–):先进行表达式运算,再进行自增或者自减运算。
结果如下:


下述为其余符合的演示效果:


2.赋值运算符
如下演示中的
int a=10
该等于号就是让a这个变量赋上了一个值,该值为10
3.关系运算符
| 运算符 | 描述 |
|---|---|
| > | 如果左边数的值大于右边数的值,那么条件为真 |
| < | 如果左边数的值小于右边数的值,那么条件为真 |
| >= | 如果左边数的值大于等于右边数的值,那么条件为真 |
| <= | 如果左边数的值小于等于右边数的值,那么条件为真 |
| == | 如果左边数的值等于右边数的值,那么条件为真 |
| != | 如果左边数的值不等于右边数的值,那么条件为真 |
| instanceof | 如果左边属于右边的类的对象,那么条件为 |
关系运算符的演示效果:


4.逻辑运算符
| 运算符 | |
|---|---|
| && | 如果左右两边同时满足条件,则条件为真 |
| || | 如果左右两边有一个满足条件,则条件为真 |
| ! | 对其中一个条件取反 |
逻辑运算符的演示效果如下:


5.位运算符
| 运算符 | 解释 |
|---|---|
| & | 位与:左右两边的数中的都某一位非0时,输出位为1 |
| | | 位或:左右两边的数中只要的某一位非0时,输出位为1 |
| ^ | 位异或:左右两边数其中的某一位不相同时,输出位为1 |
| ~ | 位非:对你的操作数的每一位取反 |
| >> | 位右移:左边的数按照位右移指定的数,向右移动到指定位置 |
| << | 位左移:右边的数按照位左移指定的数,向左移动到指定位置 |
| >>> | 位补零右移:左边的数按照位右移指定的数,向右移动到指定位置,用零来填补原来左边数的空缺位置。 具体详情点此 |
位运算符的演示效果如下:


6.条件运算符
| 运算符 | 解释 |
|---|---|
| ? | 判断 |
| : | 输出不是前面就是后面 |
用法:
int a>10 ? ture : false
如果输入的a大于10 则输出ture 如果小于10 则输出flase。
7、拓展赋值运算符
| 运算符 | 解释 | 注释 |
|---|---|---|
| += | 左边的数和右边的数加起来赋值给左边的数 | a+=b同价于a=a+b |
| -= | 左边数减去右边数的差赋值给左边的数 | a-=b同价于a=a-b |
| *= | 左边的数和右边的数乘起来赋值给左边的数 | a=b同价于a=ab |
| /= | 左边数除以右边数的商赋值给左边的数 | a/=b同价于a=a/b |
上述运算符演示效果如下:


因为变量a现在第一步进行了a/=b,所以第二步的变量a的值变为了4
第三步的变量a为19,进行a=b之后输出结果是1916为285,第四步变量a的值为285
进行a-=b之后输出结果自然为270。
二、运算符的优先级
| 优先级 | 运算符 | 运算符说明 |
|---|---|---|
| 1 | . [] () {} , ; | 分隔符 |
| 2 | ++ — ~ ! | 单目运算符 |
| 3 | (type) | 强制类型转换运算符 |
| 4 | * / % | 乘法、除法、求余 |
| 5 | + – | 加法、减法 |
| 6 | << >> >>> | 移位运算符 |
| 7 | < <= > >= instanceof | 关系运算符 |
| 8 | == != | 等价运算符 |
| 9 | & | 按位与 |
| 10 | ^ | 按位异或 |
| 11 | | | 按位或 |
| 12 | && | 条件与 |
| 13 | || | 条件或 |
| 14 | ? : | 三目运算符 |
| 15 | = += -= *= /= &= |= ^= %= <<= >>= >>>= | 赋值 |
2.对于数据类型的优先级
低–高:
(byte,short,char)<int<long<float<double
原文地址: https://blog.csdn.net/m0_63474919/article/details/124893081
本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
相关文章