Java运算符优先级和结合性一览表
Java 中的大部分运算符是从左向右结合的,也就是从左向右计算,只有单目运算符、赋值运算符和三目运算符例外,它们是从右向左结合的(也就是从右向左运算的)。
运算符有不同的优先级,所谓的优先级就是在表达式运算中的运算顺序。下表中列举了包括分隔符在内的所有运算符,上一行的运算符的优先级总是优于下一行的。
运算符的优先级从高到低的顺序大体是:
运算符有不同的优先级,所谓的优先级就是在表达式运算中的运算顺序。下表中列举了包括分隔符在内的所有运算符,上一行的运算符的优先级总是优于下一行的。
序号 | 运算符说明 | 运算符 |
---|---|---|
1 | 分隔符 | . [] () {} , ; |
2 | 单目运算符 | ++、--、~、!、(数据类型) |
3 | 算术运算符 | * / % |
4 | 算术运算符 | + - |
5 | 关系运算符 | <、>、<=、>= |
6 | 关系运算符 | == != |
7 | 逻辑运算符 | & |
8 | 逻辑运算符 | ^ |
9 | 逻辑运算符 | | |
10 | 逻辑运算符 | && |
11 | 逻辑运算符 | II |
12 | 条件运算符 | ?: |
13 | 赋值运算符 | =、*=、/=、%=、+=、<<=、>>=、>>>=、&=、^=、|= |
运算符的优先级从高到低的顺序大体是:
算术运算符->关系运算符->逻辑运算符->条件运算符->赋值运算符