logo

„Java“ operatoriaus pirmenybė

Šiame skyriuje mes išmoksime operatorius pirmenybė Java kartu su pavyzdžiais.

Kas yra operatoriaus pirmenybė?

The operatoriaus pirmenybė parodo, kaip dvi išraiškos yra susiejamos. Išraiškoje ji nustato operatorių grupavimą su operandais ir nusprendžia, kaip išraiška bus įvertinta.

knn

Sprendžiant išraišką reikia turėti omenyje du dalykus: pirmasis yra a pirmenybė o antrasis yra asociatyvumas .

„Java“ operatoriaus pirmenybė

Pirmenybė

Pirmenybė yra prioritetas grupuojant skirtingų tipų operatorius su jų operandais. Tai prasminga tik tuo atveju, jei išraiška turi daugiau nei vieną operatorių su didesne arba žemesne pirmenybe. Pirmiausia įvertinami operatoriai, turintys didesnį pirmumą. Jei norime pirmiausia įvertinti mažesnio prioriteto operatorius, turime operandus sugrupuoti naudodami skliaustus ir tada įvertinti.

Asociatyvumas

Turime vadovautis asociatyvumu, jei išraiška turi daugiau nei du tos pačios pirmenybės operatorius. Tokiu atveju galima išspręsti ir išraišką iš kairės į dešinę arba iš dešinės į kairę, atitinkamai.

„Java“ operatoriaus pirmumo lentelė

Šioje lentelėje aprašomas „Java“ naudojamų operatorių pirmumas ir asociatyvumas.

Pirmenybė operatorius Tipas Asociatyvumas
penkiolika ()
[]
·
Skliausteliuose
Masyvo indeksas
Narių atranka
Iš kairės į dešinę
14 ++
--
Uniras postprieaugis
Unary post-decrement
Iš dešinės į kairę
13 ++
--
+
-
!
~
(tipas)
Vienkartinis išankstinis prieaugis
Unarinis išankstinis sumažinimas
Vienetinis pliusas
Vienetinis minusas
Uniras loginis neigimas
Vienareikšmis bitų papildymas
Unary tipo liejinys
Iš dešinės į kairę
12 *
/
%
Daugyba
Padalinys
Modulis
Iš kairės į dešinę
vienuolika +
-
Papildymas
Atimtis
Iš kairės į dešinę
10 <<
>>
>>>
Bitų poslinkis į kairę
Bitų poslinkis į dešinę su ženklo plėtiniu
Bitų poslinkis į dešinę su nuliniu išplėtimu
Iš kairės į dešinę
9 <
<=
>
>=
pavyzdys
Santykinis mažesnis nei
Santykinis mažesnis arba lygus
Santykinis didesnis nei
Santykinis didesnis arba lygus
Tipų palyginimas (tik objektai)
Iš kairės į dešinę
8 ==
!=
Santykinis yra lygus
Santykinis nelygu
Iš kairės į dešinę
7 & Bitiškai IR Iš kairės į dešinę
6 ^ Bitiškai išskirtinis ARBA Iš kairės į dešinę
5 | Bitai imtinai ARBA Iš kairės į dešinę
4 && Logiška IR Iš kairės į dešinę
3 || Logiška ARBA Iš kairės į dešinę
2 ? : Trečias sąlyginis Iš dešinės į kairę
1 =
+=
-=
*=
/=
%=
Užduotis
Papildymo užduotis
Atimties užduotis
Daugybos užduotis
Padalinio pavedimas
Modulio užduotis
Iš dešinės į kairę

Pastaba: kuo didesnis skaičius, tuo didesnis pirmumas.

„Java“ operatoriaus pirmumo pavyzdys

Supraskime operatoriaus pirmenybę per pavyzdį. Apsvarstykite šią išraišką ir atspėkite atsakymą.

 1 + 5 * 3 

Galbūt manote, kad atsakymas bus toks 18 bet ne taip. Kadangi daugybos (*) operatorius turi didesnį pirmumą nei sudėjimo (+) operatorius. Taigi, išraiška pirmiausia įvertina 5*3, o tada įvertina likusią išraišką, ty 1+15. Todėl atsakymas bus 16 .

Pažiūrėkime kitą pavyzdį. Apsvarstykite šią išraišką.

: Java
 x + y * z / k 

Aukščiau pateiktoje išraiškoje * ir / operacijos atliekamos prieš + dėl pirmenybės. y padauginamas iš z prieš padalijus iš k dėl asociatyvumo.