Compartilhar via


Expressões condicionais: if...then...else

A expressão if...then...else executa diferentes ramificações do código e também é avaliada como um valor diferente dependendo da expressão booliana fornecida.

Sintaxe

if boolean-expression then expression1 [ else expression2 ]

Comentários

Na sintaxe anterior, expression1 é executada quando a expressão booliana é avaliada como true. Caso contrário, expression2 é executada.

Assim como outras linguagens, o constructo if...then...else pode ser usado para executar condicionalmente o código. Em F#, if...then...else é uma expressão e produz um valor pela ramificação que é executada. Os tipos das expressões em cada ramificação devem corresponder.

Se não houver uma ramificação explícita else, o tipo geral será unit e o tipo da ramificação then também deverá ser unit.

Ao encadear expressões if...then...else, você pode usar a palavra-chave elif em vez de else if. Elas são equivalentes.

Exemplo

O exemplo a seguir mostra como usar a expressão 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!

Confira também