Swift条件判断中逗号的使用方法示例

Swift语言中,Bool 值是用来进行条件判断的,可以进行 && 以及 || 的操作,从而实现多个表达式共同判断。

但是由于Swift中存在可选项绑定,或者说是用 let 展开可选项的原因,有些地方条件判断中不能够使用 && 来进行处理。比如,我们要在变量 hasValue 确实有值,且参数个数 paramCount 大于 0 的时候,执行代码,一般我们可以这样写:

if hasValue != nil && paramCount > 0 {
     ...
}

但是如果我们在后续代码中中要使用 hasValue 的值的话,就不能够只判断 hasValue 是否为nil了,而应该使用可选项绑定把值给读出来,也就是下面的代码:

if let hasValue = hasValue {
     if paramCount > 0 {
          ...
     }
}

由于 let hasValue = hasValue 并不会返回一个 Bool 值,导致两个条件不能够使用 && 进行判断,这个时候,我们就要使用所谓的逗号了,也就是可以写成:

if let hasValue = hasValue, paramCount > 0 {
    ...
}

这个样子就可以满足我们的需求,代码逼着上面的代码少了一层判断,看起来会更加友好。特别是当我们需要可选项绑定多个变量时,这样写会更加的方便。如:

if let a = a, let b = b, let c = c, let d = d, e < 0, f > 0 {
     ...
}

总的来说,条件判断中逗号的作用类似于 && ,但是它除了连接 Bool 值,也可以用来连接可选项绑定的判断。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 关于 Swift 重要这个文档所包含的准备信息, 是关于开发的 API 和技术的。这个信息可能会改变, 根据这个文...
    无沣阅读 4,378评论 1 27
  • 86.复合 Cases 共享相同代码块的多个switch 分支 分支可以合并, 写在分支后用逗号分开。如果任何模式...
    无沣阅读 1,438评论 1 5
  • 53.计算字符 在字符串中获取字符值的数量, 可以使用字符串字符属性中的计数属性: let unusualMena...
    无沣阅读 1,134评论 0 4
  • 人生风景好,携子手相看。 濡沫江湖远,容膝天地宽。 诗书柴米换,奶粉尿片穿。 磕碰虽不免,白首共承欢。
    cc九歌阅读 225评论 0 0
  • 一个小和尚问得道的师傅:“您得道前后有没有什么变化?” 老和尚说:“变化很大。” “那到底有什么变化呢?”小和尚问...
    设计师cocaine阅读 318评论 0 0