# 流程控制

  • 顺序控制
  • 分支控制
  • 循环控制

# 1. 顺序控制

流程控制-顺序

# 2. 分支控制

if (条件表达式1) {
	执行代码块1
}
else if (条件表达式2) {
	执行代码块2
}
// ……
else {
	执行代码块n
}
1
2
3
4
5
6
7
8
9
10

# 3. 循环控制

# 3.1 for 循环

// 输出 1-10,前后闭合
for (i <- 1 to 10) {
	print(i + " ") // 1 2 3 4 5 6 7 8 9 10
}
println()

// 输出 1-10,左闭右开
for (i <- 1 until 10) {
	print(i + " ") // 1 2 3 4 5 6 7 8 9
}
println()

// 循环守卫
for (i <- 1 to 10 if i % 2 != 0) {
	print(i + " ") // 1 3 5 7 9
}
println()

// 循环返回值,将遍历过程中处理的结果返回到一个新Vector集合中,使用yield关键字。
val res = for(i <- 1 to 10) yield i
println(res)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

# 3.2 while 循环

var i = 1
var sum = 0
while (i <= 100) {
	sum += i
	i += 1
}
println(s"1+2+3+...+100=$sum") // 1+2+3+...+100=5050
1
2
3
4
5
6
7

# 3.3 do while 循环

var j = 1
var re = 1
do {
	re *= j
	j += 1
} while (j <= 10)
println(s"1 * 2 * 3 * ... * 10=$re") // 1 * 2 * 3 * ... * 10=3628800
1
2
3
4
5
6
7
更新时间: 2021-05-25 22:22:53