Podmíněné výrazy: if...then...else

Výraz if...then...else spouští různé větve kódu a také vyhodnotí jinou hodnotu v závislosti na zadaném logickém výrazu.

Syntaxe

if boolean-expression then expression1 [ else expression2 ]

Poznámky

V předchozí syntaxi se výraz1 spustí, když se logický výraz vyhodnotí jako true; v opačném případě se výraz2 spustí.

Stejně jako v jiných jazycích if...then...else lze konstruktor použít k podmíněnému spuštění kódu. V jazyce F# if...then...else je výraz a vytvoří hodnotu větev, která se spustí. Typy výrazů v každé větvi se musí shodovat.

Pokud neexistuje žádná explicitní else větev, je unitcelkový typ a typ then větve musí být unittaké .

Při zřetězování if...then...else výrazů můžete místo toho použít klíčové slovo elifelse if. Jsou ekvivalentní.

Příklad

Následující příklad ukazuje, jak použít if...then...else výraz.

let test x y =
  if x = y then "equals"
  elif x < y then "is less than"
  else "is greater than"

printfn "%d %s %d." 10 (test 10 20) 20

printfn "What is your name? "
let nameString = System.Console.ReadLine()

printfn "What is your age? "
let ageString = System.Console.ReadLine()
let age = System.Int32.Parse(ageString)

if age < 10 then
    printfn "You are only %d years old and already learning F#? Wow!" age
10 is less than 20
What is your name? John
How old are you? 9
You are only 9 years old and already learning F#? Wow!

Viz také