注意:本教程是 Scala 教程系列的延续。如果您尚未阅读 Scala 入门指南 和 Scala 中的 IF ELSE,请先查看。
简介
运算符是一个符号或函数,表示要对一个或多个操作数执行某种操作。运算符有很多不同类型,而操作数可以理解为变量。运算符是一切编程语言的基础。借助运算符,我们可以对操作数执行各种操作。运算符会指示编译器执行诸如数学(算术)、逻辑、赋值等操作,并最终输出结果。
在许多编程语言(包括 Scala)中都会使用不同类型的运算符,主要包括:
- 关系运算符
- 算术运算符
- 赋值运算符
- 逻辑运算符
- 位运算符
您将从理论和代码两个层面学习上述运算符。
关系运算符
关系运算符主要用于比较两个或多个变量。如果您读过 Scala 中的 IF ELSE 教程,就会注意到您在 IF ELSE 条件中用到了关系运算符的威力。
这些关系运算符会返回一个布尔值,即 True 或 False。
以下是用于应用到变量上的关系运算符符号(来源:Operators in Scala):
-
等于(==):检查两个给定变量或操作数是否相等。若相等则返回 true,否则返回 false。
-
不等于(!=):与 等于 运算符相反,也可理解为 等于 的布尔补运算。检查两个给定操作数是否相等。若不相等则返回 true,否则返回 false。
-
大于(>):检查第一个操作数是否大于第二个操作数。若大于则返回 true,否则返回 false。
-
小于(<):与 大于 运算符相反,检查第一个操作数是否小于第二个操作数。若小于则返回 true,否则返回 false。
-
大于等于(>=):检查第一个操作数是否大于或等于第二个操作数。若是则返回 true;否则返回 false。
-
小于等于(<=):与 大于等于 运算符相反。检查第一个操作数是否小于或等于第二个操作数。若是则返回 true;否则返回 false。
下面通过一段代码来理解关系运算符。
要运行上述代码,只需输入 scala relation_op.scala,您应能看到如下所示的输出。
接下来,您将学习逻辑运算符。
逻辑运算符
它们多用于条件语句,如 IF ELSE 语句,或 while 循环。它可以将两个或更多条件合并,或对所考虑条件的输出取反。(来源:Operators in Scala)
-
逻辑与:当两个条件都满足时返回 true;否则返回 false。使用 “and” 可作为 && 运算符的替代。
-
逻辑或:当任一(或两个)条件满足时返回 true;否则返回 false。使用 “or” 可作为 || 运算符的替代。
-
逻辑非:当所考虑的条件不满足时返回 true;否则返回 false。使用 “not” 可作为 ! 运算符的替代。
算术(数学)运算符
顾名思义,算术运算符用于在操作数之间执行数学运算。
以下是 Scala 中最常用的算术运算符(来源:Operators in Scala):
-
加法:对两个变量/操作数执行加法 $(+)$。
-
减法:对两个操作数执行减法 $(-)$。
-
乘法:对两个操作数执行乘法 $(\times)$。
-
除法:用第一个操作数除以第二个操作数 $(/)$。
-
幂运算:返回操作数的指数(幂)。即将一个操作数提升为第二个操作数的幂 $(x^y)$ 或 $(x**y)$。
-
取模:当第一个操作数被第二个操作数除时,余数称为模 (%)。
我们快速写一小段代码并分析结果。
在这个示例中,您将使用列表而不是仅定义变量。与变量不同,List 可以包含 n 个不同数据类型的值,它在 Scala 中表示链表,并且是不可变的。您将对两个列表执行算术运算,而不是对两个变量。
赋值运算符
赋值运算符用于将值赋给变量。为此,会将右侧操作数视为一个值,而左侧操作数通常是要接收该值的变量。该值可以有不同的数据类型,如 int、float 等。变量与值的数据类型应相同,否则编译器会报错。(来源:Operators in Scala)
-
简单赋值:用于将值赋给变量 $(=)$。
-
加并赋值:将左操作数与右操作数相加,并将结果赋给左侧变量 $(+=)$。
-
减并赋值:类似于加并赋值。将左操作数减去右操作数,并将结果赋给左侧变量 $(-=)$。
-
乘并赋值:将左操作数与右操作数相乘,然后将结果赋给左侧变量 $(\times =)$。
-
除并赋值:将左操作数除以右操作数,最后将结果赋给左侧变量 $(/=)$。
类似地,还有更多此类赋值运算符。最后,让我们写段代码来理解它们在程序中的工作方式。
总结
恭喜您完成本篇 Scala 教程。
如果您已经阅读前两篇教程,那么至此您已覆盖了 Scala 中的三个不同主题。一个很有价值的练习是将这三篇中获得的技能综合起来,从零开始编写一个 Scala 程序。这不仅能增强您的信心,也能让您在学习更高级的 Scala 主题时更加轻松。
参考资料:
如对本教程有任何疑问,欢迎在下方评论区提问。
注意:本教程是 Scala 教程系列的延续。如果您尚未阅读 Scala 入门指南 和 Scala 中的 IF ELSE,请先查看。
简介
运算符是一个符号或函数,表示要对一个或多个操作数执行某种操作。运算符有很多不同类型,而操作数可以理解为变量。运算符是一切编程语言的基础。借助运算符,我们可以对操作数执行各种操作。运算符会指示编译器执行诸如数学(算术)、逻辑、赋值等操作,并最终输出结果。在许多编程语言(包括 Scala)中都会使用不同类型的运算符,主要包括:
您将从理论和代码两个层面学习上述运算符。
关系运算符
关系运算符主要用于比较两个或多个变量。如果您读过 Scala 中的 IF ELSE 教程,就会注意到您在
IF ELSE条件中用到了关系运算符的威力。这些关系运算符会返回一个
布尔值,即 True 或 False。以下是用于应用到变量上的关系运算符符号(来源:Operators in Scala):
等于(==):检查两个给定变量或操作数是否相等。若相等则返回 true,否则返回 false。不等于(!=):与等于运算符相反,也可理解为等于的布尔补运算。检查两个给定操作数是否相等。若不相等则返回 true,否则返回 false。大于(>):检查第一个操作数是否大于第二个操作数。若大于则返回 true,否则返回 false。小于(<):与大于运算符相反,检查第一个操作数是否小于第二个操作数。若小于则返回 true,否则返回 false。大于等于(>=):检查第一个操作数是否大于或等于第二个操作数。若是则返回 true;否则返回 false。小于等于(<=):与大于等于运算符相反。检查第一个操作数是否小于或等于第二个操作数。若是则返回 true;否则返回 false。下面通过一段代码来理解关系运算符。
要运行上述代码,只需输入 scala relation_op.scala,您应能看到如下所示的输出。
接下来,您将学习
逻辑运算符。逻辑运算符
它们多用于条件语句,如
IF ELSE语句,或while循环。它可以将两个或更多条件合并,或对所考虑条件的输出取反。(来源:Operators in Scala)逻辑与:当两个条件都满足时返回 true;否则返回 false。使用 “and” 可作为 && 运算符的替代。逻辑或:当任一(或两个)条件满足时返回 true;否则返回 false。使用 “or” 可作为 || 运算符的替代。逻辑非:当所考虑的条件不满足时返回 true;否则返回 false。使用 “not” 可作为 ! 运算符的替代。算术(数学)运算符
顾名思义,算术运算符用于在操作数之间执行数学运算。
以下是 Scala 中最常用的算术运算符(来源:Operators in Scala):
加法:对两个变量/操作数执行加法 $(+)$。减法:对两个操作数执行减法 $(-)$。乘法:对两个操作数执行乘法 $(\times)$。除法:用第一个操作数除以第二个操作数 $(/)$。幂运算:返回操作数的指数(幂)。即将一个操作数提升为第二个操作数的幂 $(x^y)$ 或 $(x**y)$。取模:当第一个操作数被第二个操作数除时,余数称为模 (%)。我们快速写一小段代码并分析结果。
在这个示例中,您将使用
列表而不是仅定义变量。与变量不同,List 可以包含n个不同数据类型的值,它在 Scala 中表示链表,并且是不可变的。您将对两个列表执行算术运算,而不是对两个变量。赋值运算符
赋值运算符用于将值赋给变量。为此,会将右侧操作数视为一个值,而左侧操作数通常是要接收该值的变量。该值可以有不同的数据类型,如
int、float等。变量与值的数据类型应相同,否则编译器会报错。(来源:Operators in Scala)简单赋值:用于将值赋给变量 $(=)$。加并赋值:将左操作数与右操作数相加,并将结果赋给左侧变量 $(+=)$。减并赋值:类似于加并赋值。将左操作数减去右操作数,并将结果赋给左侧变量 $(-=)$。乘并赋值:将左操作数与右操作数相乘,然后将结果赋给左侧变量 $(\times =)$。除并赋值:将左操作数除以右操作数,最后将结果赋给左侧变量 $(/=)$。类似地,还有更多此类赋值运算符。最后,让我们写段代码来理解它们在程序中的工作方式。
总结
恭喜您完成本篇 Scala 教程。
如果您已经阅读前两篇教程,那么至此您已覆盖了 Scala 中的三个不同主题。一个很有价值的练习是将这三篇中获得的技能综合起来,从零开始编写一个 Scala 程序。这不仅能增强您的信心,也能让您在学习更高级的 Scala 主题时更加轻松。
参考资料:
如对本教程有任何疑问,欢迎在下方评论区提问。