美文网首页
Swift5.1控制流

Swift5.1控制流

作者: 037e3257fa3b | 来源:发表于2020-09-07 16:59 被阅读0次

    5.控制流

    • 流程控制结构

      1.while与repeat while:区别在判断循环条件之前,先执⾏一次循环的代码块。然后重复循环直到条件为false
       while condition {
          statements
      }
      
       repeat {
          statements
      } while condition
      
      2.Switch:1)不存在隐式的贯穿,break 不是必须的;2)区间匹配,case 分支的模式也可以是一个值的区间;3)使用元组在同⼀个 switch 语句中测试多个值。元组中的元素可以是值,也可以是区间。另外,使⽤用下划线( _ )来匹配所有可能的值;4)值绑定(Value Bindings),case 分⽀支允许将匹配的值声明为临时常量量或变量量,并且在 case 分⽀支体内使⽤;5)Where,case 分⽀支的模式可以使⽤用 where 语句句来判断额外的条件;
      
      3.控制转移语句
      - continue:一个循环体⽴立刻停⽌止本次循环,重新开始下次循环
      - Break: 会⽴立刻结束整个控制流的执⾏行行
      - fallthrough(贯穿):fallthrough 关键字不会检查它下一个将会落入执行的 case 中的匹配条件,简单地使代码继续连接到下一个 case 中的代码
      
      4.带标签的语句:标签(statement label)来标记一个循环体或者条件语句句,对 于一个条件语句,你可以使⽤用 break 加标签的⽅式,来结束这个被标记的语句。对于一个循环语句,你可以使用 break 或者 continue 加标签,来结束或者继续这条被标记语句的执行。
       labelName: while condition {
          statements
      }
      
    • guard

      guard的执行取决于一个表达式的布尔值。我们可以使用 guard 语句来 要求条件必须为真时,以执行 guard 语句后的代码。不同于 if 语句,一个 guard 语句总 是有⼀个 else 从句,如果条件不为真则执⾏else 从句中的代码。
      
      guard let name = person["name"] else {
        return 
      }
      如果条件不不被满⾜足,在 else 分⽀支上的代码就会被执⾏行行。这个分⽀支必须转移控制以退出 guard 语句句出现的代码段。它可以⽤用控制转移语句句如 return 、 break 、 continue 或者 throw 做这件事,或者调⽤用⼀一个不不返回的⽅方法或函数,例例如 fatalError() 。
      
    • 检测API可用性

      if #available(平台名称 版本号, ..., *) { 
        //APIs 可⽤用,语句句将执⾏
      } else {
        //APIs 不可用,语句句将不执⾏
      }
      

    相关文章

      网友评论

          本文标题:Swift5.1控制流

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