Scala 中的 IF ELSE

Source: Scala – IF ELSE Statements

像许多其他应用程序和编程语言一样,Scala也有决策条件if-else语句。如果条件为真,则执行if语句条件块,否则执行else条件块(仅当存在else语句时)。

通常,else语句没有条件;仅当if条件为假时才执行。因此,简而言之,if-else语句由基于True-False的布尔表达式组成。

有各种类型的if-else语句:

If 语句,

If-Else 语句,

嵌套 If-else 语句,

If-Else-If-Else 语句。

在开始学习不同的if-else语句之前,让我们按照以下步骤快速为mac用户设置Scala环境。

注意: 确保你已安装Java,如果没有,请按照此处提供的说明进行操作。

– \$ brew update

– \$ brew install scala

– \$ brew install sbt

– \$ echo ‘-J-XX:+CMSClassUnloadingEnabled’ >>
/usr/local/etc/sbtopts

– \$ echo ‘-J-Xmx2G’ >> /usr/local/etc/sbtopts

完成上述步骤后,迅速测试安装,通过在终端中输入scala,您应该看到如下所示的输出。

注意: 在本教程中,您将在vim编辑器中编写代码,并从终端执行它。

Scala 条件语句

if语句包含一个布尔(真或假)性质的表达式。如果表达式为真,则执行if语句内的代码块;如果表达式为假,则执行if语句结束后的第一行代码。

if(boolean expression) { execute if boolean expression holds true }

首先,您将在一个名为scala_if对象中定义一个objectclass,在该对象中设置您的main函数并编写主要代码体。您将创建一个整数变量x,其值为20。最后,是代码的核心部分,即带有条件x<=20if块,由于x的值为20,因此将执行if语句内的代码块。

让我们将下面的代码保存为if.scala

要运行上述代码,您需要做的是输入scala if.scala,您应该看到如下所示的输出。

Scala if-else 语句

类似于if语句,if-else语句包含一个布尔表达式(真或假)。如果if语句为真,则执行if语句内的代码块;如果为假,则执行else语句内的代码块。

if(boolean expression) { execute if boolean expression holds true } else { execute block if boolean expression (if statement) holds false }

以下代码将执行else语句,因为变量x的值大于20,所以将执行else语句内的代码块。

让我们用if-else.scala这个名字保存以下代码。

要运行上述代码,只需输入scala if-else.scala,你应该能看到如下输出。

Scala 嵌套 if-else 语句

与通常的if语句后跟else语句类似,嵌套的if-else语句也类似。在嵌套的if-else中,你可以在一个if或else-if语句内使用另一个if或else-if语句。

在下一节,你将了解else-if语句。

if(boolean expression 1) { execute block 1 if boolean expression 1 holds true** if(boolean expression 2) { execute block 2 if boolean expression 1 and 2 holds true } }

以下代码使用嵌套-if语句来比较四个整型变量$v$、$x$、$y$和$z$,最后,如果所有语句都正确,则在终端打印输出。

让我们用名字nested-if-else.scala保存以下代码。

Scala else-if 语句

if-else语句相比,else-if语句更为强大。不同于if-else语句中的else后面跟一个if语句,else-if本身就是一个单独的语句。它让你可以自由地测试各种条件。

然而,在使用else-if语句时,有一些规则需要记住:

  • else-if只能紧跟在if语句之后,一个if语句可以有零个或多个else-if

  • 同样,else只能紧跟在ifelse-if语句之后,一个if语句可以有零个或一个else语句。

  • 一旦某个else-if成功,剩余的else-ifelse将不再考虑,直接跳过。

if(boolean expression 1) { execute block 1 if boolean expression 1 holds true } else-if(boolean expression 2) { execute block 2 if boolean expression 2 holds true } else { execute this block if all of the above statements holds false }

结论

恭喜你完成本教程。

本教程是对那些对Scala中的条件IF ELSE语句感兴趣的新手的一个很好的起点。

给大家一个小练习,就是编写一个针对Scala中的else-if语句的小段代码,并尝试理解这些语句与其他语句的不同之处。

参考资料:

请在下面的评论部分随时提出与这个教程相关的任何问题。

Source:
https://www.datacamp.com/tutorial/if-else-in-scala