Espressioni condizionali: if...then...else

L'espressione if...then...else esegue rami di codice diversi e restituisce anche un valore diverso a seconda dell'espressione booleana specificata.

Sintassi

if boolean-expression then expression1 [ else expression2 ]

Osservazioni:

Nella sintassi precedente expression1 viene eseguita quando l'espressione booleana restituisce true; in caso contrario, expression2 viene eseguito.

Analogamente ad altri linguaggi, il if...then...else costrutto può essere usato per eseguire il codice in modo condizionale. In F# if...then...else è un'espressione e produce un valore dal ramo eseguito. I tipi di espressioni in ogni ramo devono corrispondere.

Se non è presente alcun ramo esplicito else , il tipo complessivo è unite anche il then tipo del ramo deve essere unit.

Quando si concatenano if...then...else le espressioni, è possibile usare la parola chiave elif anziché else if. Sono equivalenti.

Esempio

Nell'esempio seguente viene illustrato come usare l'espressione if...then...else .

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!

Vedi anche