Reklama

zonerbooks.cz | zoner.cz | czechia.com | regzone.cz | inshop.cz | inmail.cz | zonerpress.cz | zonerantivirus.com | zonerama.cz

interval.cz

Naučte se Javu - operátory a řídící příkazy

10. 05. 2002 | Jiří Semecký | Java | Komentáře: 0

Operátory a příkazy pro řízení běhu programu jsou jedny ze základních stavebních kamenů každého programovacího jazyka. Pojďte se podívat na kompletní přehled operátorů a řídících struktur Javy.

Operátory

Základní operátory Javy jsou velmi podobné operátorům jiných programovacích jazyků (např. C nebo PHP). V Javě existují unární, binární a ternární operátory. Asociativita určuje, v jakém pořadí je řetězec operátorů vyhodnocen, pokud není závorkami určeno jinak. Operátory s vyšší prioritou budou vyhodnoceny dříve (např. násobení má přednost před sčítáním).

a+b+c+d znamená ((a+b)+c)+d
a=b=c=d znamená a=(b=(c=d))

Následující tabulka obsahuje kompletní seznam operátorů seřazených podle priority.

priorita operátor počet operandů typ operandů typ výsledku asoc. popis
1 ++ 1 aritmetický aritmetický P pre/post inkrementace
1 -- 1 aritmetický aritmetický P pre/post dekrementace
+,- 1 aritmetický aritmetický P plus, mínus
1 ~ 1 aritmetický aritmetický P bitový doplněk
1 ! 1 boolean boolean P logická negace
1 (typ) 1 libovolný typ P přetypování
2 *, /, % 2 aritmetický aritmetický L násobení, dělení, zbytek po dělení
3 +, - 2 aritmetický aritmetický L sčítání, odčítání
3 + 2 String String L spojení řetězců
4 << 2 celočíselný celočíselný L posun vlevo
4 >> 2 celočíselný celočíselný L posun vpravo s rozšířením znaménka
4 >>> 2 celočíselný celočíselný L posun vpravo s rozšířením nuly
5 <, <= 2 aritmetický boolean L menší, menší nebo rovno
5 >, >= 2 aritmetický boolean L vetší, vetší nebo rovno
5 instance of 2 objekt, typ boolean L je objekt daného typu
6 == 2 cokoli boolean L rovno
6 != 2 cokoli boolean L není rovno
7 & 2 celočíselný celočíselný L bitové AND
7 & 2 boolean boolean L logické AND
8 ^ 2 celočíselný celočíselný L bitové XOR
8 ^ 2 boolean boolean L logické XOR
9 | 2 celočíselný celočíselný L bitové OR
9 | 2 boolean boolean L logické OR
10 && 2 boolean boolean L podmínkové AND
11 || 2 boolean boolean L podmínkové OR
12 ? : 3 boolean, cokoli, cokoli cokoli P podmínkový operátor
13 = 2 cokoli cokoli P přiřazení
13 +=, -=, *=, /=, <<=, >>=, >>>=, &=, ^=, |= 2 cokoli cokoli P přiřazení s operací

Operátor instanceof zjišťuje, zda je levý operand (objekt) instancí třídy v pravém operandu, popř. zda podporuje dané rozhraní.

Rozdíl mezi boolovským operátorem & a && (| a ||) je ten, že operátory & a | vyhodnotí obě strany výrazu a provedou logickou operaci, zatímco operátory && a ||, pokud je výsledek po vyhodnocení levého operandu jasný, pravý operátor nevyhodnocují.

Operátor += je zkratkou za rozšířený zápis = ..+, podobně jako ostatní operátory z této skupiny. Následující dva řádky jsou ekvivalentní:

x += 1;
x = x+1;

Operátor ? : slouží kpodmíněnému přiřazení hodnoty.

a>10 ? a-10 : a

Pokud hodnota a je větší než 10, výraz nabývá hodnoty a-10, jinak nabývá hodnoty a. Následující výraz např. vrátí menší zčísel a, b:

a<b?a:b

Výraz soperátorem = vrací přiřazenou hodnotu, proto je možné psát:

a = b = c = d = 0;

Příkazy pro řízení běhu

if, switch, for, while, do-while, break, continue, return, try, catch, finally, throw

Řídící příkazy v Javě jsou velmi podobné ostatním programovacím jazykům, proto jen stručně:

break a continue se mohou odkazovat na návěstí
switch může mít vpodmínkovém výrazu typy byte, char, short, long

for (int i = 0; i < arrayOfInts.length; i++) {
  System.out.print(arrayOfInts[i] + " ");
  }
if (x >= 100) {
  popis = 'velké';
  } else {
  popis = 'malé';
  }
switch (den) {
  case 1: System.out.println("pondělí"); break;
  case 2: System.out.println("úterý"); break;
  case 3: System.out.println("středa"); break;
  case 4: System.out.println("čtvrtek"); break;
  case 5: System.out.println("pátek"); break;
  case 6: System.out.println("sobota"); break;
  case 7: System.out.println("neděle"); break;
  }
vnejsi: for (int i=0; i;<10; i++) {
 while (a[i]>0) {
    zpracuj(a[i], i);
    if (a[i]==0) continue;
    if (a[i]<0) continue vnejsi;
    }
  }

Příkazy try, catch, finally, throw slouží pro řízení výjimek a budou probrány v samostatném díle.

V příštím díle se již dostaneme k samotnému srdci Javy – k objektům.


Reklama


Další aktuální články na interval.cz

Tematicky související články

Dejte vědět i ostatním o článku

Diskuse (počet komentářů: 0)

Buďte prvním návštěvníkem, který přidá nový komentář.

Přidat nový komentář

Jméno a e-mail jsou nepovinné. Příspěvky obsahující odkaz jsou moderovány.

Zoner AntiVirus Free pro Android
zabezpečte si svůj smartphone, zdarma
Profesionální eshop Zoner inShop od 990 Kč.
Reklama
Reklama

Syndikace

hledáme nové autory | redakce interval.cz | reklama na interval.cz

© ZONER software, a.s., všechna práva vyhrazena, interval.cz dodržuje právní předpisy o ochraně osobních údajů. Powered by WordPress.