logo

Precedència de l'operador Java

En aquesta secció, aprendrem el operador precedència a Java juntament amb exemples.

Què és la precedència de l'operador?

El prioritat de l'operador representa com s'uneixen dues expressions. En una expressió, determina l'agrupació d'operadors amb operands i decideix com s'avaluarà una expressió.

bucles java

Quan es resol una expressió, cal tenir en compte dues coses, la primera és a precedència i el segon és associativitat .

Precedència de l'operador Java

Precedència

La prioritat és la prioritat per agrupar diferents tipus d'operadors amb els seus operands. Només té sentit si una expressió té més d'un operador amb una precedència més alta o més baixa. En primer lloc s'avaluen els operadors que tenen una prioritat més alta. Si volem avaluar primer els operadors de precedència inferior, hem d'agrupar els operands mitjançant parèntesis i després avaluar.

Associativitat

Hem de seguir l'associativitat si una expressió té més de dos operadors de la mateixa precedència. En aquest cas, una expressió es pot resoldre esquerra a dreta o de dreta a esquerra, d'acord amb.

vlc baixar vídeos de youtube

Taula de prioritats d'operadors Java

La taula següent descriu la precedència i l'associativitat dels operadors utilitzats a Java.

Precedència Operador Tipus Associativitat
15 ()
[]
·
Parèntesis
Subíndex de matriu
Selecció de membres
Esquerra a dreta
14 ++
--
Post-increment unari
Post-decrement unari
De dreta a esquerra
13 ++
--
+
-
!
~
(tipus)
Preincrement unari
Predisminució unària
Plus unari
Menys unari
Negació lògica unària
Complement unari per bits
Cast de tipus unari
De dreta a esquerra
12 *
/
%
Multiplicació
Divisió
Mòdul
Esquerra a dreta
11 +
-
Addició
Resta
Esquerra a dreta
10 <<
>>
>>>
Desplaçament a l'esquerra per bits
Desplaçament a la dreta per bits amb extensió de signe
Desplaçament a la dreta bit a bit amb extensió zero
Esquerra a dreta
9 <
<=
>
>=
en lloc de
Relacional menys que
Relacional menor o igual
Relacional més gran que
Relacional major o igual
Comparació de tipus (només objectes)
Esquerra a dreta
8 ==
!=
Relacional és igual a
Relacional no és igual a
Esquerra a dreta
7 & I per bits Esquerra a dreta
6 ^ OR exclusiu per bits Esquerra a dreta
5 | OR inclòs per bits Esquerra a dreta
4 && I lògic Esquerra a dreta
3 || OR lògic Esquerra a dreta
2 ? : Condicional ternari De dreta a esquerra
1 =
+=
-=
*=
/=
%=
Encàrrec
Encàrrec addicional
Tasca de resta
Tasca de multiplicació
Encàrrec de la divisió
Assignació de mòduls
De dreta a esquerra

Nota: més gran és el nombre més gran és la precedència.

Exemple de precedencia de l'operador Java

Entenem la precedència de l'operador mitjançant un exemple. Considera l'expressió següent i endevina la resposta.

 1 + 5 * 3 

Podria estar pensant que la resposta seria 18 però no així. Perquè l'operador de multiplicació (*) té una prioritat més alta que l'operador de suma (+). Per tant, l'expressió primer avalua 5*3 i després avalua l'expressió restant, és a dir, 1+15. Per tant, la resposta serà 16 .

numerar l'alfabet

Vegem un altre exemple. Considereu la següent expressió.

 x + y * z / k 

A l'expressió anterior, les operacions * i / es realitzen abans de + a causa de la precedència. y es multiplica per z abans de dividir-la per k a causa de l'associativitat.