美文网首页
14 在Swift中进行循环控制

14 在Swift中进行循环控制

作者: 为了自由的白菜 | 来源:发表于2023-03-05 21:09 被阅读0次

在Swift中进行循环控制

for-in循环

  • 使用for-in循环来遍历序列,比如一个范围的数字,数组中的元素或者字符串中的字符
image-20230220220753410.png

for-in遍历字典

  • 当字典遍历时,每一个元素都返回一个(key,value)元组,你可以在for-in循环体重使用显式命名常量来分解(key,value)元组成员
image-20230220220949038.png
  • 如果你不需要序列的每一个值,你可以使用下划线来取代遍历名以忽略值
image-20230220221120668.png

for-in分段区间

  • 使用stride(form:to:by:)函数来跳过不想要的标记(开区间)
  • 闭区间也同样适用,适用stride(form:through:by:)即可
image-20230220221318400.png

whilt循环

  • repeat-while循环(Objective-C do-while)
image-20230220221448979.png

更强大的switch

switch

  • switch语句会将一个值与多个可能的模式匹配。然后基于第一个成功匹配的模式来执行合适的代码块

  • switch语句一定得是全面的。就是说,给定类型里每一个值都得被考虑到并且匹配到一个switch的case。如果无法提供一个switch case所有可能的值,你可以定义一个默认匹配所有的case来匹配所有未明确出来的值。这个匹配所有的情况用关键字default标记,并且必须在所有case的最后出现

  • Objective-C switch语句如果不全面,仍然可以运行

image-20230220222554019.png

没有隐式贯穿

  • 相比C和Objective-C里面的switch语句来说,Swift里的switch语句不会默认从匹配case的末尾贯穿到下一个case里
  • 相反,整个switch语句会在匹配到第一个switch的case执行完毕之后退出,不在需要显式的break语句
image-20230220222852047.png
  • 每一个case的函数体必须包含至少一个可执行的语句
  • 在一个switch的case中匹配多个值可以用逗号分隔,并且可以写成多行
image-20230220223056735.png
  • switch的case值可以在一个区间中匹配
image-20230220223201783.png

元组匹配

  • 你可以使用元组来在一个switch语句中测试多个值
  • 使用下划线(_)来表明匹配所有可能的值
image-20230220223322418.png

值绑定

  • switch的case可以将匹配到的值临时绑定位一个常量或者变量,来给case的函数使用
  • 如果使用var关键字,临时的变量就会以合适的值来创建并初始化。对这个变量的任何改变都只会在case的函数体内有效
image-20230220223622057.png

where字句

  • switch case 可以使用where分句来检查是否符号特定的约束
image-20230220223817316.png

复合匹配

  • 多种情形共享同一个函数体的多个情况可以在case后写出多个模式来复合,在每个模式之间用逗号分隔。如果任何一个模式匹配了,那么这个情况都会被认为是匹配的。如果模式太长,可以把它们写成多行
image-20230220224109295.png
  • 复合匹配同样可以包含值绑定。所有复合匹配的模式都必须包含相同的值绑定集合,并且复合情况中的每一个绑定都得有相同的类型格式。这才能确保无论复合匹配的那部分命中了,接下来的函数体中的代码都能访问到绑定的值并且值得类型也都相同
image-20230220224413799.png

相关文章

  • 从 0 到 1 实现 Swift App (二)循环控制

    swift 中的循环控制语法跟 oc 比较有些不同,循环体可以使用开闭区间来进行控制循环体,穿插使用 switch...

  • Swift控制流

    Swift控制流 for 循环 Swift中使用for-in的形式来进行for循环,类似于C语言的for条件递增的...

  • Swift 里进行循环控制

    今天继续学习 Swift 的课程,这个课有 100 多课,我基本上都保证不了一天一课……比较郁闷啊! 今天学习的是...

  • Swift开发之实用的Category看了不后悔

    一:查找UIView及其子类的根父视图控制器 在Swift中do {}while循环,在Swift的测试中,改为r...

  • 第八章 Swift 循环

    Swift 语言提供了以下几种循环类型 循环控制语句 循环控制语句和OC一样,不通点在于Swift在case条件下...

  • Swift教程之控制流

    控制流 Swift包含很多控制流语句:while循环、if、guard、switch和for-in循环。 For-...

  • Swift-标签语句

    在Swift中,可以在其他循环和条件语句中嵌套循环和条件语句,以创建复杂的控制流结构。 然而,循环和条件语句都可以...

  • (九) [Swift]Swift中的流程控制

    1.for循环 老式c语言式循环,swift中已不推荐使用 使用集合进行循环 使用范围进行循环 当变量不重要的时候...

  • Swift 循环控制

    Fallthrough 首先看一下 C 中的 Switch, 如果在 case 命中的时候, 不使用 break,...

  • Swift 循环控制

    for-in 循环 使用 for-in循环来遍历序列,比如一个范围的数字,数组中的元素或者字符串中的字符 for-...

网友评论

      本文标题:14 在Swift中进行循环控制

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