Teilen über


Bedingte Ausdrücke: if...then...else

Der if...then...else-Ausdruck führt verschiedene Verzweigungen des Codes aus und wird je nach dem angegebenen booleschen Ausdruck auch mit einem anderen Wert ausgewertet.

Syntax

if boolean-expression then expression1 [ else expression2 ]

Bemerkungen

In der vorherigen Syntax wird expression1 ausgeführt, wenn der boolesche Ausdruck mit true ausgewertet wird. Andernfalls wird expression2 ausgeführt.

Wie in anderen Sprachen kann das if...then...else-Konstrukt verwendet werden, um Code bedingt auszuführen. In F# ist if...then...else ein Ausdruck und generiert einen Wert gemäß der Verzweigung, die ausgeführt wird. Die Typen der Ausdrücke in jeder Verzweigung müssen übereinstimmen.

Wenn keine explizite else-Verzweigung vorhanden ist, ist unit der Gesamttyp, und der Typ der then-Verzweigung muss auch unit sein.

Beim Verketten von if...then...else-Ausdrücken können Sie das Schlüsselwort elif anstelle von else if verwenden, da sie gleichwertig sind.

Beispiel

Das folgende Beispiel veranschaulicht, wie der if...then...else-Ausdruck verwendet wird.

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!

Weitere Informationen