Expressions conditionnelles : if...then...else
Décrit l’expression if...then...else
, qui exécute différentes branches de code et qui prend une valeur différente selon l’expression booléenne donnée.
Syntaxe
if boolean-expression then expression1 [ else expression2 ]
Notes
Dans la syntaxe précédente, expression1 s’exécute lorsque l’expression booléenne prend la valeur true
; sinon, expression2 s’exécute.
Comme pour d’autres langages, la construction if...then...else
peut être utilisée afin d’exécuter un code de manière conditionnelle. Dans F#, if...then...else
est une expression et produit une valeur par la branche qui s’exécute. Les types des expressions de chaque branche doivent correspondre.
S’il n’existe aucune branche else
explicite, le type global sera unit
, et le type de la branche then
doit également être unit
.
Lors du chaînage d’expressions if...then...else
, vous pouvez utiliser le mot-clé elif
au lieu de else if
; ils sont équivalents.
Exemple
L’exemple suivant montre comment utiliser l’attribut 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!