logo

Prednost operaterja Java

V tem razdelku se bomo naučili operater prednost v Javi skupaj s primeri.

a-b obrezovanje

Kaj je prednost operaterja?

The prednost operaterja predstavlja, kako sta dva izraza povezana skupaj. V izrazu določa združevanje operatorjev z operandi in odloča, kako bo izraz ovrednotil.

Pri reševanju izraza je treba upoštevati dve stvari, prva je a prednost in drugi je asociativnost .

Prednost operaterja Java

Prednost

Prednost je prednostna naloga za združevanje različnih vrst operatorjev z njihovimi operandi. Smiselno je le, če ima izraz več kot en operator z višjo ali nižjo prednostjo. Najprej se ocenijo operaterji z višjo prednostjo. Če želimo najprej ovrednotiti operatorje z nižjo prednostjo, moramo operande združiti v skupine z uporabo oklepajev in nato ovrednotiti.

Asociativnost

Asociativnosti moramo slediti, če ima izraz več kot dva operatorja enake prednosti. V takem primeru je izraz mogoče rešiti bodisi od leve proti desni oz od desne proti levi, temu primerno.

nespremenljiv seznam

Tabela prednosti operaterjev Java

Naslednja tabela opisuje prednost in asociativnost operatorjev, ki se uporabljajo v Javi.

Prednost Operater Vrsta Asociativnost
petnajst ()
[]
·
Oklepaji
Indeks matrike
Izbor članov
Od leve proti desni
14 ++
--
Enarni postinkrement
Enarni postdekrement
Od desne proti levi
13 ++
--
+
-
!
~
(tip)
Enarni predprirastek
Enarni preddekrement
Enarni plus
Enarni minus
Enarna logična negacija
Unarni bitni komplement
Odlitek enobarvnega tipa
Od desne proti levi
12 *
/
%
Množenje
Delitev
Modul
Od leve proti desni
enajst +
-
Dodatek
Odštevanje
Od leve proti desni
10 <<
>>
>>>
Bitni premik v levo
Bitni premik v desno z razširitvijo predznaka
Bitni premik v desno z ničelno razširitvijo
Od leve proti desni
9 <
<=
>
>=
instanceof
Relacijski manj kot
Relacijski manj kot ali enako
Relacijski večji od
Relacijski večji ali enak
Primerjava vrst (samo predmeti)
Od leve proti desni
8 ==
!=
Relacijski je enak
Relacijski ni enak
Od leve proti desni
7 & Bitno IN Od leve proti desni
6 ^ Bitno izključujoč ALI Od leve proti desni
5 | Bitno vključujoč ALI Od leve proti desni
4 && Logični IN Od leve proti desni
3 || Logični ALI Od leve proti desni
2 ? : Ternarni pogojnik Od desne proti levi
1 =
+=
-=
*=
/=
%=
Dodelitev
Dodatna naloga
Odštevanje naloga
Naloga množenja
Dodelitev delitve
Dodelitev modula
Od desne proti levi

Opomba: večje je število, večja je prednost.

Primer prednosti operaterja Java

Razumejmo prednost operatorja na primeru. Razmislite o naslednjem izrazu in uganite odgovor.

 1 + 5 * 3 

Morda mislite, da bi bil odgovor 18 ampak ne tako. Ker ima operator množenja (*) večjo prednost kot operator seštevanja (+). Zato izraz najprej ovrednoti 5*3 in nato ovrednoti preostali izraz, tj. 1+15. Zato bo odgovor 16 .

kdo je izumil šolo

Poglejmo še en primer. Razmislite o naslednjem izrazu.

 x + y * z / k 

V zgornjem izrazu se operaciji * in / izvajata pred + zaradi prednosti. y se zaradi asociativnosti pomnoži z z, preden se deli s k.