深入讲解Swift中的模式匹配

2020-01-09 00:19:03王旭

模式匹配

模式匹配是 Swift 中非常常见的一种编程模式,使用模式匹配,可以帮助我们写出简明、清晰以及易读的代码,使我们的代码变得简洁而强大。

条件判断中的模式匹配

条件判断是我们使用最普遍的流程控制,在 Swift 中,只能接受 Bool 类型的值作为条件体;除了直接判断 Bool 值之外,我们还能使用使用条件语句进行可选绑定,这在我们开发中是非常常用的方式。

匹配枚举值

在 Swift 中,创建的枚举类型默认是不可比较的(没有实现Comparable协议),这就意味着我们不能直接使用==操作符来判断两个枚举值是否相等,这种情况下,需要使用模式匹配:

创建一个枚举类型:


enum Result {
 case success
 case failure
}

初始化一个枚举值:


let result = Result.success

使用模式匹配来判断创建的枚举值的值:


if case .success = result {
 print("Value of result is success.")
}

可选绑定

创建一个可选值:


let optionalInt: Int? = 1

使用可选绑定的方式进行解包: