运算符
运算符
引用自Java 运算符
Java中提供的运算符可以分为以下几组:
算术运算符
关系运算符
位运算符
逻辑运算符
赋值运算符
其他运算符
算术运算符
示例:A = 10, B = 20
| 运算符 | 描述 | 示例 | 
|---|---|---|
| + | 加法 - 运算符两侧的值相加 | A + B 等于 30 | 
| - | 减法 - 左操作书减去右操作数 | A - B 等于 -10 | 
| * | 乘法 - 操作符两侧的值相乘 | A * B 等于 200 | 
| / | 除法 - 左操作数除以右操作数 | B / A 等于 2 | 
| % | 取模 - 左操作数除以右操作数的余数 | B % A 等于 0 | 
| ++ | 自增 - 操作数的值加1 | B++ 或 ++B 等于21 | 
| – | 自减 - 操作数的值减1 | B– 或 –B 等于19 | 
前缀自增自减(++a, –a):先进行自增或自减运算,再进行表达式运算。
后缀自增自减(a++, a–):先进行表达式运算,再进行自增或自减运算。
关系运算符
示例:A = 10, B = 20
| 运算符 | 描述 | 示例 | 
|---|---|---|
| == | 检查两个操作数的值是否相等,相等返回true | A == B 为false | 
| != | 检查两个操作数的值是否不等,不相等返回true | A != B 为true | 
| > | 检查左操作数的值是否大于右操作数的值,大于则返回true | A > B 为false | 
| < | 检查左操作数的值是否小于右操作数的值,小于则返回true | A < B 为true | 
| >= | 检查左操作数的值是否大于或等于右操作数的值,大于或等于则返回true | A >= B 为false | 
| <= | 检查左操作数的值是否小于或等于右操作数的值,小于或等于则返回true | A <= B 为true | 
位运算符
Java定义了位运算符,可应用于int、long、short、char、byte等类型。位运算符作用在所有的位上,并且按位运算。
| 操作符 | 描述 | 
|---|---|
| & | 如果相对应的位都是1,结果为1,否则为0 | 
| | | 如果相对应的位都是0,结果为0,否则为1 | 
| ^ | 如果相对应位的值相同,结果为0,否则为1 | 
| ~ | 按位取反运算符,翻转操作数的每一位,即0变成1,1变成0 | 
| << | 按位左移运算符,左操作数按位左移右操作数指定的位数 | 
| >> | 按位右移运算符,左操作数按位右移右操作数指定的位数 | 
| >>> | 按位右移补零操作符,左操作数的值按右操作数指定的位数右移,移动得到的空位用0填充 | 
1  | 示例:A = 60, B = 13  | 
逻辑运算符
示例:A = true, B = false
| 操作符 | 描述 | 示例 | 
|---|---|---|
| && | 逻辑与运算符,当且仅当两个操作数都为true,才返回true | A && B 为false | 
| || | 逻辑或运算符,两个操作数中任意一个为true,就返回true | A || B 为true | 
| ! | 逻辑非运算符,反转操作数的逻辑状态,操作数为true,则结果为false | !(A && B) 为true | 
短路逻辑运算符:当使用逻辑与运算符时,当第一个操作数为false时,其结果必定为false,此时不会再判断第二个操作数了;同样的,再使用逻辑或运算符时,当第一个操作数为true时,也不会再判断第二个操作数了。
赋值运算符
| 操作符 | 描述 | 示例 | 
|---|---|---|
| = | 简单赋值运算符,将右操作数的值赋给左操作数 | C = A + B 将A + B得到的值赋给C | 
| += | 加和赋值运算符,将两侧操作数相加赋值给左操作数 | C += A 等价于 C = C + A | 
| -= | 减和赋值运算符,将左操作数减去右操作数的结果赋值给左操作数 | C -= A 等价于 C = C - A | 
| *= | 乘和赋值运算符,将两侧操作数相乘赋值给左操作数 | C *= A 等价于 C = C * A | 
| /= | 除和赋值运算符,将左操作数除以右操作数的结果赋值给左操作数 | C /= A 等价于 C = C / A | 
| %= | 取模和赋值运算符,将左操作数和右操作数取模后赋值给左操作数 | C %= A 等价于 C = C % A | 
| <<= | 左移位赋值运算符 | C <<= 2 等价于 C = C << 2 | 
| >>= | 右移位赋值运算符 | C >>= 2 等价于 C = C >> 2 | 
| &= | 按位与赋值运算符 | C &= 2 等价于 C = C & 2 | 
| ^= | 按位异或赋值运算符 | C ^= 2 等价于 C = C ^ 2 | 
| |= | 按位或赋值运算符 | C |= 2 等价于 C = C | 2 | 
其他运算符
条件运算符(又称三目运算符、三元运算符)
该运算符有三个操作数,并且需要判断布尔表达式的值。该运算符的主要功能是经过判断之后决定哪个值应该赋值给变量。
1
var a = (expression) ? val1 : val2;
expression为true时,将val1赋值给a;为false时将val2赋值给a。
instanceof运算符
instanceof 运算符用来在运行时指出对象是否是特定类的一个实例。
1
boolean result = object instanceof class
如果object是class的一个实例,则instanceof运算符返回true,反之若object不是指定class的一个实例或者object为null,则返回false。在判断一个实例引用的类型时,使用的是实际类型,而不是声明的类型。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 yupaits的博客!
 评论




