Java 中的强制类型转换运算符

时间:2023-01-28 21:53:31

Java 中强制类型转换运算符与方法调用运算符是不同的,优先级与结合性都有区别,如下表所示:

优先级

                                                     运算符 

 结合性

1  

 []数组运算 .点运算符 ()调用方法

从左到右

 2

  ! ~ ++ -- +(一元加) -(一元减) ()强制类型转换 new

 从右到左

 3

  * / %

 从左到右

 4

 +(二元加) -(二元减)

从左到右

 5

  >> << >>>

从左到右

 6

  < <= > >= instanceof

从左到右

 7

  == !=

从左到右

 8

  &

从左到右

  ^

从左到右

10

 |

从左到右

 11

  &&

从左到右

 12

  ||

从左到右

 13

  ?:

从左到右

 14  

 = += -= *= /= %= &= |= ^= <<= >>= >>>=

 从右到左 

这就是为什么形如:(type)object.property; 的执行是先 object.property 后强制类型转换。