14 在Swift中进行循环控制

简介: 在Swift中进行循环控制

在Swift中进行循环控制


for-in循环


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


image.png


for-in遍历字典


  • 当字典遍历时,每一个元素都返回一个(key,value)元组,你可以在for-in循环体重使用显式命名常量来分解(key,value)元组成员


image.png


  • 如果你不需要序列的每一个值,你可以使用下划线来取代遍历名以忽略值


image.png


for-in分段区间


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


image.png


whilt循环


  • repeat-while循环(Objective-C do-while)


image.png


更强大的switch


switch


  • switch语句会将一个值与多个可能的模式匹配。然后基于第一个成功匹配的模式来执行合适的代码块
  • switch语句一定得是全面的。就是说,给定类型里每一个值都得被考虑到并且匹配到一个switch的case。如果无法提供一个switch case所有可能的值,你可以定义一个默认匹配所有的case来匹配所有未明确出来的值。这个匹配所有的情况用关键字default标记,并且必须在所有case的最后出现
  • Objective-C switch语句如果不全面,仍然可以运行


image.png



没有隐式贯穿


  • 相比C和Objective-C里面的switch语句来说,Swift里的switch语句不会默认从匹配case的末尾贯穿到下一个case里
  • 相反,整个switch语句会在匹配到第一个switch的case执行完毕之后退出,不在需要显式的break语句


image.png


  • 每一个case的函数体必须包含至少一个可执行的语句
  • 在一个switch的case中匹配多个值可以用逗号分隔,并且可以写成多行


image.png

  • switch的case值可以在一个区间中匹配


image.png

元组匹配


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


image.png


值绑定


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


image.png


where字句


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


image.png

复合匹配


  • 多种情形共享同一个函数体的多个情况可以在case后写出多个模式来复合,在每个模式之间用逗号分隔。如果任何一个模式匹配了,那么这个情况都会被认为是匹配的。如果模式太长,可以把它们写成多行


image.png


复合匹配同样可以包含值绑定。所有复合匹配的模式都必须包含相同的值绑定集合,并且复合情况中的每一个绑定都得有相同的类型格式。这才能确保无论复合匹配的那部分命中了,接下来的函数体中的代码都能访问到绑定的值并且值得类型也都相同


image.png




目录
相关文章
|
1月前
|
Swift
Swift 循环
10月更文挑战第26天
30 4
|
6月前
|
存储 算法 Swift
Swift开发——循环执行方式
Swift语言中的循环主要包括`for-in`和`while`结构。`for-in`适用于遍历数字区间、字符串和字典,支持使用`stride`函数定制步进。字典遍历时,可以用二元元组`(k, v)`访问键值对。`while`循环有标准形式和`repeat-while`形式,确保至少执行一次循环体。程序示例展示了`for-in`和不同`while`结构的用法,包括计算阶乘、奇数和、加密字符串以及最大公约数和最小公倍数。
45 0
Swift开发——循环执行方式
|
7月前
|
安全 Swift 开发者
【Swift开发专栏】Swift中的条件语句与循环
【4月更文挑战第30天】本文探讨了Swift中条件语句和循环的使用,包括`if`、`else`、`if-else if-else`、`switch`条件语句,以及`for`、`while`、`do-while`循环结构。`switch`语句在Swift中要求完备,避免遗漏情况。循环结构提供了不同场景下的重复执行选项。条件语句与循环的结合使用,如`for-in`与`if`、`while`与`switch`,增强了代码的灵活性和功能。熟练掌握这些基础对Swift开发者至关重要。
57 1
|
7月前
|
Swift 索引
在Swift编程语言中,`for-in`循环
在Swift编程语言中,`for-in`循环
81 3
|
7月前
|
Swift
在Swift编程语言中,Repeat-While循环
在Swift编程语言中,Repeat-While循环
72 2
|
7月前
|
Swift
在Swift编程语言中,`while`循环
在Swift编程语言中,`while`循环
141 1
|
Swift
Swift - 用装有控制器name的数组for循环批量创建控制器(string转UIViewController)
Swift - 用装有控制器name的数组for循环批量创建控制器(string转UIViewController)
103 0
|
Swift
Swift - 条件语句和循环语句
Swift - 条件语句和循环语句
72 0
|
人工智能 前端开发 开发工具
Swift实用小册05:条件、循环和控制转移语句的使用
Swift实用小册05:条件、循环和控制转移语句的使用
213 0
Swift实用小册05:条件、循环和控制转移语句的使用
|
Swift
Swift5.1—闭包的循环强引用
Swift5.1—闭包的循环强引用
232 0
Swift5.1—闭包的循环强引用