今天无意之间在慕课网上看到一个关于 for 循环的新特性,感觉不错就来和大家分享一下。
1、 先说下我们经常用到的 for in 循环
// 1 - 10 正向循环 打印 1 到 10 并小于 10 的所有数
for i in 1 ..< 10{
print(i)
}
控制台打印:
1
2
3
4
5
6
7
8
9
这是我们经常用到的 for 循环
2、现在开始说for 循环新特性 reversed() 函数
上面 1 中我们说的是 for 的正向循环,现在用 for 新函数来反向循环。
// 使用新函数 (1...10)为区间 reversed()使区间反转 也就是说反向输出
for i in (1...10).reversed(){
print(i)
}
控制台打印:
10
9
8
7
6
5
4
3
2
1
这是把 1 - 10 并且包含 10 的数反向输出
3、在来说说 for 循环的另一个新函数 stride
//从 0 到 10 步长为 2 的数值 此数值是 从 0 - 10 并且小于 10 的数
for i in stride(from: 0, to: 10, by: 2) {
print(i)
}
控制台打印:
0
2
4
6
8
// 从 0 到 10 步长为 2 的数值 此数值是 从 0 - 10 并且等于 10 的数
for i in stride(from: 0, through: 10, by: 2) {
print(i)
}
控制台打印:
0
2
4
6
8
10
// 从 10 到 0 的数值 ,反向输出
for i in stride(from: 10, through: 0, by: -2) {
print(i)
}
控制台打印:
10
8
6
4
2
0
for i in stride(from: 10, to: 0, by: -2) {
print(i)
}
控制台打印:
10
8
6
4
2
// 此函数还可以输出小数
for i in stride(from: 0.5, to: 1.2, by: 0.1) {
print(i)
}
控制台打印:
0.5
0.6
0.7
0.8
0.9
1.0
1.1