Scala - If-else-if-else 语句
‘if’ 语句可以后跟一个可选的 ‘else if...else’ 语句,这对于使用单个 if...else if 语句测试各种条件非常有用。
使用 if、else if、else 语句时,需要注意以下几点。
- 一个 ‘if’ 可以有零个或一个 else,它必须在所有 else ifs 之后。
- 一个 ‘if’ 可以有零个到多个 else if,它们必须在 else 之前。
- 一旦某个 else if 成功,后续的 else if 或 else 都不会被测试。
流程图
以下是条件语句的流程图示意图 −
语法
以下是 if...else if...else 的语法 −
if(Boolean_expression 1){
// 当 Boolean_expression 1 为 true 时执行
} else if(Boolean_expression 2){
// 当 Boolean_expression 2 为 true 时执行
} else if(Boolean_expression 3){
// 当 Boolean_expression 3 为 true 时执行
} else {
// 当上述所有条件都不为 true 时执行
}
if 语句首先检查第一个条件 (Boolean_expression 1) 是否为 true。如果为 true,则执行 if 语句之后的代码。如果为 false,Scala 会检查 else if 语句中的下一个条件 (Boolean_expression 2)。如果第二个条件为 true,则执行其代码。
这种检查会继续进行到其他 else if 语句。如果所有条件都为 false,Scala 会执行 else 语句之后的代码。这样,只有第一个为 true 的条件对应的代码块会执行。
Scala if-else-if-else 语句示例
尝试以下示例程序,以理解 Scala 编程语言中的条件语句(if-else-if-else 语句) −
object Demo {
def main(args: Array[String]) = {
var x = 30;
if( x == 10 ){
println("Value of X is 10");
} else if( x == 20 ){
println("Value of X is 20");
} else if( x == 30 ){
println("Value of X is 30");
} else{
println("This is else statement");
}
}
}
if 语句首先检查第一个条件 (x == 10) 是否为 true。如果为 true,则执行 if 语句之后的代码,打印 "Value of X is 10"。如果为 false,Scala 会检查 else if 语句中的下一个条件 (x == 20)。如果第二个条件为 true,则执行其代码,打印 "Value of X is 20"。
这种检查会继续进行到其他 else if 语句。在本例中,下一个条件是 x == 30。如果此条件为 true,则打印 "Value of X is 30"。
如果所有条件都为 false,Scala 会执行 else 语句之后的代码,打印 "This is else statement"。这样,只有第一个为 true 的条件对应的代码块会执行。
将上述程序保存为 Demo.scala。使用以下命令编译和执行该程序。
命令
\>scalac Demo.scala \>scala Demo
输出
Value of X is 30
可整除性
尝试以下另一个示例程序,以理解 Scala 编程语言中的条件语句(if-else-if-else 语句)−
object Demo {
def main(args: Array[String]) = {
val number = 15
if (number % 2 == 0) {
println("The number is even.")
} else if (number % 3 == 0) {
println("The number is divisible by 3.")
} else {
println("The number is not divisible by 2 or 3.")
}
}
}
if 语句首先检查第一个条件(number % 2 == 0)是否为真。如果为真,则运行 if 语句之后的代码,打印 "The number is even."。如果为假,Scala 会检查 else if 语句中的下一个条件(number % 3 == 0)。如果第二个条件为真,则运行其代码,打印 "The number is divisible by 3"。
如果所有条件均为假,Scala 会运行 else 语句之后的代码,打印 "The number is not divisible by 2 or 3."。通过这种方式,只会运行第一个为真的条件的代码块。
将上述程序保存为 Demo.scala。以下命令用于编译和执行此程序。
命令
>scalac Demo.scala >scala Demo
输出
The number is divisible by 3.