Приоритет операций

В языке Java используется множество операций. Одни из них имеют более высокий приоритет чем другие. Например, умножение и деление, так же как и в математике, имеют более высокий приоритет чем сложение и вычитание. Разделители имеют наивысший приоритет, после них идут унарные операции. Присваивание имеет наинизший приоритет из всех операций.

В следующей таблице представлены операции Java языка. Операции, находящиеся в одном ряду таблицы, имеют одинаковый приоритет. Операции в каждой последующей строке ниже по приоритету:

[] () .        
++ -- ~ ! +(унарная) - (унарная) (приведение типов)
* / %        
+ -          
>> >>> <<        
> >= < <= instanceof    
== !=          
&            

^

 

 

 

 

 

 

|            
&&            
||            
? :            
->            
=            
Круглые скобки повышают приоритет заключенных в них операций. Их можно использовать с целью упростить понимание смысла выражения.

Применение круглых скобок (избыточных или не избыточных) не ведет к снижению производительности программы.

Равнозначные выражения:

а | 4 + с >> b & 7
(a | (((4 + c) >> b) & 7))
Read also:
Comments