控制结构与函数
学习 Scala 中的条件表达式(if/else)、循环,以及如何定义简单函数。
控制结构与函数 是 CoddyKit 上的免费 Scala for Backend Engineering & Functional Programming 课时。 这是第 3 节课,共 3 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Scala for Backend Engineering & Functional Programming 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Scala for Backend Engineering & Functional Programming 课程共包含 3 节课。
指引代码的执行路径
把您的程序想象成一段旅程。有时您需要做出决定,例如向左转还是向右转;有时您需要重复某个动作,例如连续走几步。
控制结构是让代码做出这些决定并重复执行操作的工具。它们决定语句的执行顺序,引导程序的流程。
条件逻辑:If/Else
最基本的控制结构是 if/else 表达式。它允许程序根据条件为真或为假来执行不同的代码块。
在 Scala 中,if 是一个表达式,也就是说它始终会返回一个值。与许多其他语言相比,这是一个强大的特性,因为在那些语言中,if 只是一个语句。
If/Else 实战
让我们看看 if/else 的工作方式。此示例会检查一个数字是否大于 5,并根据结果赋予一个字符串。
object Main {
def main(args: Array[String]): Unit = {
val x = 10
val result = if (x > 5) {
"Greater"
} else {
"Smaller"
}
println(result)
}
}处理多个条件
如果有两种以上的可能情况,该怎么办?您可以使用 else if 链接多个条件,从而创建更复杂的决策路径。
代码会按照顺序检查条件。第一个计算结果为 true 的条件,其代码块会被执行,其余条件则会被跳过。
重复操作:While 循环
有时您需要重复执行一个代码块,直到某个条件不再满足。这时循环就派上用场了。
只要条件保持为 true,while 循环就会反复执行代码块。请注意,不要因为条件始终为真而创建无限循环!
While 循环示例
这个简单的 while 循环会打印一条消息三次。请注意,变量 i 会在循环内部更新,最终使条件 i < 3 变为 false。
object Main {
def main(args: Array[String]): Unit = {
var i = 0
while (i < 3) {
println(s"Count: $i")
i = i + 1
}
}
}使用 For 表达式进行迭代
Scala 的 for 表达式在迭代方面非常灵活。它可以遍历范围、集合,甚至还能筛选值。
现在,我们先关注如何遍历一个简单的数字范围。to 关键字会创建一个包含终点的范围。
For 循环代码示例
下面是一个从 1 迭代到 3(包括 3)并打印每个数字的 for 循环。这是对已知次数执行重复任务的常见方式。
object Main {
def main(args: Array[String]): Unit = {
for (i <- 1 to 3) {
println(s"Number: $i")
}
}
}定义您自己的函数
函数是为执行特定任务而设计的代码块。它们可以帮助您组织代码,使代码能够重复使用,也更易于理解。
在 Scala 中,您可以使用 def 关键字定义函数,后面依次写上函数名称、参数(及其类型)和可选的返回类型。如果函数返回 Unit(即不返回任何内容),则可以省略返回类型。
简单函数示例
让我们定义一个名为 add 的函数,它接收两个整数并返回它们的和。请注意,我们是如何从 main 方法中调用该函数的。
object Main {
def add(a: Int, b: Int): Int = {
a + b
}
def main(args: Array[String]): Unit = {
val sum = add(5, 3)
println(s"The sum is: $sum")
}
}快速检查:控制流程
下面的 Scala 代码会打印什么?
回顾:控制结构与函数
做得很好!在本课中,您学习了如何引导代码的执行:
- 使用
if/else表达式做出决定,并根据条件返回一个值。 - 使用
while循环,只要条件为真就重复执行操作。 - 使用
for表达式遍历范围和其他序列。 - 定义函数,将可重复使用的代码块封装起来。
这些是任何程序的基础构件,可以帮助您创建动态且结构清晰的应用程序!
常见问题解答
「控制结构与函数」课时是免费的吗?
是的 — 「控制结构与函数」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Scala for Backend Engineering & Functional Programming 课程的其余内容,请升级到 CoddyKit PRO。 Scala for Backend Engineering & Functional Programming 课程共包含 3 节课。
「控制结构与函数」这节课中我会学到什么?
学习 Scala 中的条件表达式(if/else)、循环,以及如何定义简单函数。 你通过在浏览器中直接运行的动手代码来练习 Scala for Backend Engineering & Functional Programming,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Scala for Backend Engineering & Functional Programming 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Scala for Backend Engineering & Functional Programming 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 3 节课,共 3 节。
「控制结构与函数」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Scala for Backend Engineering & Functional Programming 课中编写并运行代码吗?
能。每节 Scala for Backend Engineering & Functional Programming 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。