Podmienené operátory sa používajú na vyhodnotenie stavu, ktorý sa uplatňuje na jeden alebo dva boolean výrazy. Výsledok vyhodnotenia je buď pravdivý alebo nepravdivý.
Existujú traja podmienení operátori:
& & logický operátor AND.
|| logický operátor OR.
?: ternárny operátor.
Podmienení operátori
Logické operátory AND aj logické operátory OR zaberajú dva operandy. Každý operand je boolovský výraz (t. J. Hodnotí sa ako pravdivý alebo nepravdivý). Logická podmienka AND sa vráti true, ak sú oba operandy pravdivé, inak sa vráti false. Logická podmienka ALEBO sa vráti nepravdivo, ak sú oba operandy nepravdivé, inak sa vráti pravda.
Logickí operátori AND aj logickí operátori OR používajú metódu skratového hodnotenia. Inými slovami, ak prvý operand určuje celkovú hodnotu podmienky, druhý operand sa nevyhodnocuje. Napríklad, ak logický operátor OR vyhodnotí, že jeho prvý operand je pravdivý, nemusí vyhodnotiť druhý, pretože už vie, že logická podmienka OR musí byť pravdivá. Podobne, ak logický operátor AND vyhodnotí svoj prvý operand ako nepravdivý, môže preskočiť druhý operand, pretože už vie, že logický AND stav bude nepravdivý.
ternárny operátor trvá tri operandy. Prvý je boolovský výraz; druhá a tretia sú hodnoty. Ak je boolovský výraz pravdivý, ternárny operátor vráti hodnotu druhého operandu, inak vráti hodnotu tretieho operandu.
Príklad podmienených operátorov
Ak chcete otestovať, či je číslo deliteľné dvoma a štyrmi:
int číslo = 16;
ak (číslo% 2 == 0 && číslo% 4 == 0)
{
System.out.println („Je deliteľné dvoma a štyrmi!“);
}
inak
{
System.out.println („Nie je možné ho deliť dvoma a štyrmi!“);
}
Podmienený operátor "&&" najskôr vyhodnotí, či je jeho prvý operand (t. J. Číslo% 2 == 0) pravdivý, a potom vyhodnotí, či je jeho druhý operand (t. J. Číslo% 4 == 0) pravdivý. Pretože obidve sú pravdivé, logická AND podmienka je pravdivá.