Share via


Expressions conditionnelles : if... then...else (F#)

L'expression if...then...else exécute différentes branches de code et prend une valeur différente selon l'expression booléenne donnée.

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.

Contrairement à d'autres langages, la construction if...then...else est une expression, et non une instruction.Cela signifie qu'elle produit une valeur qui est celle de la dernière expression dans la branche qui s'exécute.Les types des valeurs produites dans chaque branche doivent correspondre.S'il n'y a aucune branche else explicite, son type est unit.Par conséquent, si le type de la branche then est un type autre qu'unit, il doit y avoir une branche else avec le même type de retour.Lorsque vous chaînez des expressions if...then...else, vous pouvez utiliser le mot clé elif à la place d'elseif ; ils sont équivalents.

Exemple

L'exemple suivant illustre l'utilisation de l'expression 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
  
  

Voir aussi

Autres ressources

Référence du langage F#