其实很多的人不能熟记以下的这个表格,这种基础的东西几乎每个面试题里都会出现,在开发应用中如果不能熟练掌握运算符的 优先级,将有可能使运行结果大出意料,或漏洞百出。[td=1,1,57 bgColor=#ffffff]优先级[td=1,1,226 bgColor=#ffffff]运算符[td=1,1,85 bgColor=#ffffff]结合性[td=1,1,57 bgColor=#ffffff]1[td=1,1,226 bgColor=#ffffff]() [] .[td=1,1,85 bgColor=#ffffff]从左到右[td=1,1,57 bgColor=#ffffff]2[td=1,1,226 bgColor=#ffffff]! +(正) -(负) ~ ++ --[td=1,1,85 bgColor=#ffffff]从右向左[td=1,1,57 bgColor=#ffffff]3[td=1,1,226 bgColor=#ffffff]* / %[td=1,1,85 bgColor=#ffffff]从左向右[td=1,1,57 bgColor=#ffffff]4[td=1,1,226 bgColor=#ffffff]+(加) -(减)[td=1,1,85 bgColor=#ffffff]从左向右[td=1,1,57 bgColor=#ffffff]5[td=1,1,226 bgColor=#ffffff]<< >> >>>[td=1,1,85 bgColor=#ffffff]从左向右[td=1,1,57 bgColor=#ffffff]6[td=1,1,226 bgColor=#ffffff]< <= > >= instanceof[td=1,1,85 bgColor=#ffffff]从左向右[td=1,1,57 bgColor=#ffffff]7[td=1,1,226 bgColor=#ffffff]== !=[td=1,1,85 bgColor=#ffffff]从左向右[td=1,1,57 bgColor=#ffffff]8[td=1,1,226 bgColor=#ffffff]&(按位与)[td=1,1,85 bgColor=#ffffff]从左向右[td=1,1,57 bgColor=#ffffff]9[td=1,1,226 bgColor=#ffffff]^[td=1,1,85 bgColor=#ffffff]从左向右[td=1,1,57 bgColor=#ffffff]10[td=1,1,226 bgColor=#ffffff]|[td=1,1,85 bgColor=#ffffff]从左向右[td=1,1,57 bgColor=#ffffff]11[td=1,1,226 bgColor=#ffffff]&&[td=1,1,85 bgColor=#ffffff]从左向右[td=1,1,57 bgColor=#ffffff]12[td=1,1,226 bgColor=#ffffff]||[td=1,1,85 bgColor=#ffffff]从左向右[td=1,1,57 bgColor=#ffffff]13[td=1,1,226 bgColor=#ffffff]?:[td=1,1,85 bgColor=#ffffff]从右向左[td=1,1,57 bgColor=#ffffff]14[td=1,1,226 bgColor=#ffffff]= += -= *= /= %= &= |= ^= ~= <<= >>= >>>=[td=1,1,85 bgColor=#ffffff]从右向左
说明:
1、 该表中优先级按照从高到低的顺序书写,也就是优先级为1的优先级最高,优先级14的优先级最低。
2、 结合性是指运算符结合的顺序,通常都是从左到右。从右向左的运算符最典型的就是负号,例如3+-4,则意义为3加-4,符号首先和运算符右侧的内容结合。
3、 instanceof作用是判断对象是否为某个类或接口类型。
4、 注意区分正负号和加减号,以及按位与和逻辑与的区别 |