循环是使计算机变得出色的原因之一:每秒可以重复执行数十亿次简单任务的能力。
硬件使机器快速运行,软件使机器快速运行变慢。 ——克雷格·布鲁斯。
1.For 循环
Swift中最常见的循环是一个for循环:它将遍历数组和范围,并且每次循环都将拉出一项并分配给一个常量。
let names = ["Sterling", "Cyril", "Lana", "Ray", "Pam"]
for _ in names {
print("[CENSORED] is a secret agent!")
}
当没有使用循环变量时,可以用_代替。
2.While 循环
while:给它提供条件检查,其循环代码将一直循环直到条件失败。
什么时候该使用for 或者 while?
for 常跟有限序列一起使用,比如遍历1到10
while循环可以循环直到条件变为假。
这意味着我们可以重复执行相同的代码,直到
1.用户要求我们停止。
2.服务器要求我们停止。
3.找到了想要的答案。
4.产生了足够的数据。
while可以一直循环,直到我们退出。
3.Repeat 循环
var a = 0
repeat {
print(a)
a += 1
} while a < 20
repeat 循环至少执行一次,因为条件在循环末尾。
Repeat 和 While该如何选择?
假设我们对数组重新随机排列。
let numbers = [1, 2, 3, 4, 5]
let random = numbers.shuffled()
如果要确保random 和 numbers不一样,我们要检查是否和原数组相同,如果匹配再次进行排列。
使用while,我们可以这样写。
let numbers = [1, 2, 3, 4, 5]
var random = numbers.shuffled()
while random == numbers {
random = numbers.shuffled()
}
如果使用repeat,我们可以这样写。
let numbers = [1, 2, 3, 4, 5]
var random: [Int]
repeat {
random = numbers.shuffled()
} while random == numbers
两种区别在于 shuffled()函数,在repeat中只调用了一次,简单的代码看起来不是问题,但是如果是5行代码或者更多呢。
4.退出循环
提前结束循环时,你可以用break
立即退出。
var countDown = 10
while countDown >= 0 {
print(countDown)
if countDown == 4 {
print("I'm bored. Let's go now!")
break
}
countDown -= 1
}
print("Blast off!")
5.退出多层循环
要退出外部循环,先给外部循环打个标签,然后在内部循环中,添加条件同时退出两个循环。
outloop: for i in 0...10 {
for j in 0...10 {
if i+j == 10 {
break outloop
}
}
}
6.跳过当前循环
continue
7.无限循环
while true
iphone 上的所有应用都使用无限循环,程序可以保持一直运行,直到关闭为止,循环结束可以使用清理代码。
8.总计
1.循环使我们重复代码,直到条件为假。
2.常用的for
给每个循环的每个项目非配一个临时常数,不需要时可以用_
。
3.while
循环可以提供一个明确的检查条件。
4.repeat
主体至少运行一次。
5.break
退出循环,嵌套循环,break
加上外部循环的标签。
6.continue
跳过循环项目。
7.无限循环使用 while true
.
网友评论