zhangweifang
2016-06-06 13:53
swift 2.2 去掉了C-Style的for循环,是不是以后就没有改变步长的逻辑可用了?
在swift2.2中,不仅没有了C-style的循环,而且连++,--运算符都取消掉了。此时,实现改变步长的逻辑,需要使用整型的stride函数。比如,最基本的,实现递减循环,见如下代码:
for i in 10.stride (through: 0, by: -1) { print("\(i)") }
10.stride (through: 0, by: -1),表示从10到0(through),每次递减1。
其他改变步长的逻辑依此类推。
for i in 1... {
print(i);
}
这样写竟然被允许 ,这是一个死循环,应该报错,或者警告吗?
不对 3.0 好像也用不了了
for i in stride(from :0, through: 10, by: 1){
print(i*i)
}
for i in stride(from: 1, to: 2, by: 0.1){
print(i)
}
这两种是被推荐的,前者包含区间上限,后者不包含区间上限
6666
玩儿转Swift 2.0(第一季)
37605 学习 · 66 问题
相似问题