美文网首页100 Days of SwiftUI
100 Days of SwiftUI - Day 4 循环

100 Days of SwiftUI - Day 4 循环

作者: 星星星宇 | 来源:发表于2020-09-15 14:49 被阅读0次

    循环是使计算机变得出色的原因之一:每秒可以重复执行数十亿次简单任务的能力。
    硬件使机器快速运行,软件使机器快速运行变慢。 ——克雷格·布鲁斯。

    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.

    相关文章

      网友评论

        本文标题:100 Days of SwiftUI - Day 4 循环

        本文链接:https://www.haomeiwen.com/subject/leoaektx.html