-、++、--
| 运算符 | 名称 | 说明 | 例子 |
|---|---|---|---|
| - | 取反符号 | 取反运算 | b=-a |
| ++ | 自加1 | 先取值再加一、先加一再取值 | a++或++a |
| -- | 自减1 | 先取值再减一、先减一再取值 | a--或--a |
+、-、*、/、%
| 运算符 | 名称 | 说明 | 例子 |
|---|---|---|---|
| + | 加 | 求和、连接 | a+b |
| - | 减 | 求差 | a-b |
| * | 乘 | 求积 | a*b |
| / | 除 | 求商 | a/b |
| % | 取余 | a除以b的余数 | a%b |
算术运算符是一种简写,一般用于变量自身的变化
| 运算符 | 名称 | 例子 |
|---|---|---|
| += | 加赋值 | a+b、a+b+3 |
| -= | 减赋值 | a-=b |
| *= | 乘赋值 | a*=b |
| /= | 除赋值 | a/=b |
| %= | 取余赋值 | a%=b |
==、!=、>、<、>=、<=
| 运算符 | 名称 |
|---|---|
| == | 等于 |
| != | 不等于 |
| > | 大于 |
| < | 小于 |
| >= | 大于等于 |
| <= | 小于等于 |
!、&、|、&&、||
| 运算符 | 名称 |
|---|---|
| ! | 非 |
| & | 与 |
| | | 或 |
| && | 短路与 |
| || | 短路或 |
~、&、|、^、>>、>>、&=、|=、^=、>=、>>>=
| 运算符 | 名称 | 例子 | 说明 |
|---|---|---|---|
| ~ | 位反 | ~x | 将x的值按位取反 |
| & | 位与 | x&y | x与y位进行位与运算 |
| | | 位或 | x|y | x与y位进行位或运算 |
| ^ | 位异或 | x^y | x与y位进行位或运算 |
| >> | 有符号右移 | x>>a | x右移a位,高位采用符号位补位 |
| << | 左移 | x< | x左移a位,低位用0补位 |
| >>> | 无符号右移 | x>>>a | x右移a位,高位用0补位 |
| &= | 位与等于 | a&=b | 等价于a=a&b |
| |= | 位或等于 | a|=b | 等价于a=a|b |
| ^= | 位异或等于 | a^=b | 等价于a=a^b |
| <<= | 左移等于 | a<<=b | 等价于a=a< |
| >>= | 右移等于 | a>>=b | 等价于a=a>>b |
| >>>= | 右移等于 | a>>>=b | 等价于a=a>>>b |
| 三元运算符(?:) | 例如x?y:z,其中x,y,z都为表达式 |
| 中括号 | 数字下标 |
| 小括号 | 改变运算顺序的作用 |
| 引用号 (.) | 对象调用实例变量或实例方法的操作符,也是类调用静态变量或静态方法的操作符 |
| 赋值号(=) | 赋值是用=进行的 |
| instanceof | 判断某个对象是否属于某个类 |
| new | 对象内存分配运算符 |
| 箭头(->) | 用来声明Lambda表达式 |
| 双冒号(::) | 用于表达Lambda表达式中的方法引用 |
运算符优先级大体顺序,从高到低是:
算数运算符—>位运算符—>关系运算符—>逻辑运算符—>赋值运算符
| 优先级 | 运算符 |
|---|---|
| 1 | 引用号、小括号、中括号 |
| 2 | ++、--、-(数值取反)、~(位反)、!(逻辑非)、类型转换小括号 |
| 3 | *、/、% |
| 4 | +、- |
| 5 | <<、>、>>> |
| 6 | <、>、<=、>=、instanceof |
| 7 | ==、!= |
| 8 | &(逻辑与、位与) |
| 9 | ^(位异或) |
| 10 | |(逻辑或、位或) |
| 11 | && |
| 12 | || |
| 13 | ?: |
| 14 | -> |
| 15 | =、*=、/=、%=、+=、-=、>=、>>>=、&=、^=、|= |



