swift 2.2 去掉了C-Style的for循环

来源:4-1 Swift 2.0逻辑控制之循环结构 - for-in,for

zhangweifang

2016-06-06 13:53

swift 2.2 去掉了C-Style的for循环,是不是以后就没有改变步长的逻辑可用了?

写回答 关注

5回答

  • liuyubobobo
    2016-06-08 12:04:06
    已采纳

    在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。

    其他改变步长的逻辑依此类推。

    zhangw...

    非常感谢!

    2016-06-12 10:38:25

    共 1 条回复 >

  • 慕移动9181930
    2022-03-26 08:03:00
  • CrakcerSW
    2018-06-12 23:53:44

    for i in 1... {

        print(i);

    }

    这样写竟然被允许 ,这是一个死循环,应该报错,或者警告吗?

  • 掃地僧
    2016-09-21 08:20:18

    不对 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)

    }

     这两种是被推荐的,前者包含区间上限,后者不包含区间上限

  • 掃地僧
    2016-09-21 07:20:13

    6666

玩儿转Swift 2.0(第一季)

基于Swift2.1讲解swift语言基础知识,了解语言特性

37605 学习 · 66 问题

查看课程

相似问题