Skip to content

Latest commit

 

History

History

07-ternarni-operator

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 

Ternární operátor

Šikovnou drobností umožňující elegantní vyhodnocení výrazu je takzvaný ternární operátor (angl. ternary operator). Platí o něm, že vždy vrací nějakou hodnotu – jednu ze dvou. Která bude vrácena, záleží na podmínce uvedené v ternárním operátoru. Jeho syntaxe je tedy

<podmínka> ? <hodnota1> : <hodnota2>

Například:

bool isABird = true;

int numberOfWings = isABird ? 2 : 0;

Do proměnné numberOfWings se uloží hodnota, jakou vrátí ternární operátor. To závisí na proměnné isABird. Když je true, vrátí se 2, a když false, vrátí se 0.

Hodnota vrácená z ternárního operátoru se nemusí nutně ukládat do proměnné:

bool isABird = true;

Console.WriteLine(isABird ? "a bird" : "a plane");

Ternární operátory se dají dokonce řetězit:

bool canFly = true;
bool isABird = false;
        
int numberOfWings = canFly ? isABird ? 2 : 4 : 0;

Pozn.: v Pythonu má ternární operátor jinou syntaxi než u většiny jazyků:

<hodnota1> if <podmínka> else <hodnota2>