Swift流程控制

来源:互联网 发布:无印良品水乳 知乎 编辑:程序博客网 时间:2024/05/22 06:49

1.if分支结构
2.switch case
3.while, do while
4.for循环,for in专门负责遍历字符串,范围,序列和集合等包含的元素

        var a :Int? = 5        if a != nil        {            println("a为非空")        }        else        {            println("a为空")        }        //使用if else 语句时一定要处理包括范围更小得情况        //switch贯穿特定的case块        var num = 4        var des = "数值是\(num)是"        switch num        {        case 2,3,4,6:            des += "质数,还是"            fallthrough        default:            des += "整数"        }        println(des)//数值是4是质数,还是整数        //switch的范围匹配,61...100(包括61和100)        var score = 100        switch score        {        case 61...100:            println("优秀")        default:            println("其它")        }        //grade会接收score1的值,并且grade会匹配所有剩下的值,因此不在需要default        var score1 = 100        switch score1        {        case 61...100:            println("优秀")        case let grade:            println("其它\(grade)")        }        //循环语句while,do while循环,先循环在判断循环条件        var count = 0        while count < 10        {            println("\(count)")            count++        }        println("循环结束\(count)")        var count1 = 0        do        {        count1++        println("\(count1)")        }        while count1 > 5        println("结束")        /*循环结果        0,0,0        b:0        s:1,p:0        1,1,1        b:1        s:2,p:1        2,2,2        b:2        s:3,p:2        3,3,3        b:3        s:4,p:3        */        for var b = 0 ,s = 0, p = 0;b < 10 && s < 4 && p < 10; p++        {            println("\(b),\(s),\(p)")            println("b:\(b++)")            println("s:\(++s),p:\(p)")        }        for var b = 0 ,s = 0, p = 0;b < 10 && s < 4 && p < 10; p++        {            if b == 2            {               continue            }            println("b是:\(b),\(s),\(p)")            println("b:\(b++)")            println("s:\(++s),p:\(p)")        }        //for循环可以将初始化条件定义到循环体之外        var count2 = 0        // for循环里只放循环条件        /*        结果        count20        count21        count22        */        for ;count2 < 10;        {            if count2 == 3            {//                continue//当等于3时,忽略本次循环,循环还会继续                break            }           println("count2\(count2++)")        }        var textname = "text.org"        for a in textname        {            println(a)        }        //只是想通过字符串的长度确定循环次数,可以用_代替常量        for _ in textname        {            println("厉害")        }        //for in 可以用于遍历范围,数组,字典等集合        var max = 7        for num in 1...max        {            println("\(num)")        }      //break 既可以终止所在的循环,还可以直接结束外层循环,可以给外层循环添加outer标签,终止外层循环        //结果i:0,j:0/i:0,j:1        outer: for var i = 0 ; i < 5 ; i++        {            for var j = 0; j < 4; j++            {                println("i:\(i),j:\(j)")                if j == 1                {                    //跳出outer标签所标识的循环                    break outer                }            }        }        /*i:0,j:0        i:0,j:1        i:0,j:0        i:0,j:1        i:1,j:0        i:1,j:1        i:2,j:0        i:2,j:1        i:3,j:0        i:3,j:1        i:4,j:0        i:4,j:1        */        for var i = 0 ; i < 5 ; i++        {            for var j = 0; j < 4; j++            {                println("i:\(i),j:\(j)")                if j == 1                {                    break                }            }        } //通过return结束的是整个函数或方法,不论return处于多少层循环之内

来自《疯狂Swift讲义》

0 0
原创粉丝点击