English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
A sentença IF...ELSE do Scala decide qual bloco de código executar com base no resultado da execução de uma ou mais instruções (True ou False).
Pode-se entender o processo de execução da sentença condicional a partir da figura a seguir:
A sentença if é composta por uma expressão booleana e o bloco de instruções subsequente.
A sintaxe da sentença if é a seguinte:
if(Expressão Booleana) { // Se a expressão booleana for true, execute o bloco de instruções dessa sentença. }
Se a expressão booleana for true, execute o bloco de instruções dentro dos parênteses, senão pule o bloco de instruções dentro dos parênteses e execute as instruções após os parênteses.
object Test { def main(args: Array[String]) { var x = 10; if( x < 20 ){ println("x < 20"); } } }
Execute o código acima, o resultado será:
$ scalac Test.scala $ scala Test x < 20
A sentença if pode ser seguida diretamente pela sentença else, onde o bloco de instruções dentro do else é executado quando a expressão booleana for false.
A sintaxe do if...else é a seguinte:
if(Expressão Booleana){ // Se a expressão booleana for true, execute o bloco de instruções dessa sentença. }else{ // Se a expressão booleana for false, execute o bloco de instruções dessa sentença. }
object Test { def main(args: Array[String]) { var x = 30; if( x < 20 ){ println("x é menor que 20"); }else{ println("x é maior que 20"); } } }
Execute o código acima, o resultado será:
$ scalac Test.scala $ scala Test x é maior que 20
A sentença if pode ser seguida imediatamente pela sentença else if...else, o que é útil em situações de várias condições de verificação.
A sintaxe da sentença if...else if...else é a seguinte:
if( expressão booleana 1{ // Se a expressão booleana 1 Se for true, execute esse bloco de instruções }else if( expressão booleana 2{ // Se a expressão booleana 2 Se for true, execute esse bloco de instruções }else if( expressão booleana 3{ // Se a expressão booleana 3 Se for true, execute esse bloco de instruções }else { // Se todas as condições acima forem false, execute esse bloco de instruções }
object Test { def main(args: Array[String]) { var x = 30; if( x == 10 { println("O valor de X é 10"); }else if( x == 20 ){ println("O valor de X é 20"); }else if( x == 30 ){ println("O valor de X é 30"); }else{ println("Não é possível determinar o valor de X"); } } }
Execute o código acima, o resultado será:
$ scalac Test.scala $ scala Test O valor de X é 30
A sentença aninhada if...else pode implementar a inserção de uma ou mais sentenças if dentro de uma sentença if.
A sintaxe da sentença aninhada if...else é a seguinte:
if( expressão booleana 1{ // Se a expressão booleana 1 Se for true, execute esse bloco de instruções if( expressão booleana 2{ // Se a expressão booleana 2 Se for true, execute esse bloco de instruções } }
Sentenças aninhadas else if...else, semelhantes às sentenças aninhadas if...else.
object Test { def main(args: Array[String]) { var x = 30; var y = 10; if( x == 30 ){ if( y == 10 { println("X = 30 , Y = 10"); } } } }
Execute o código acima, o resultado será:
$ scalac Test.scala $ scala Test X = 30 , Y = 10