zoukankan      html  css  js  c++  java
  • Swift之where一般使用场景

    使用where语句之前必须在where之前有一个主语变量名

    • 协议约束
    //基类A继承了SomeProtocol协议才能添加扩展
    extension SomeProtocol where Self: A {
        func showParamA() {
            print(self.a)
        }
    }
    
    • for...in...遍历
    let arr = [1, 2, 4, 5, 6]
        
    for (index, value) in arr.enumerated() where value > 4 {
        print(index, value)
    }
    
    • case 语句,相当于if判断
    let arr = [1, 2, 4, 5, 6]
        
    for (index, value) in arr.enumerated() where value > 4 {
       
        switch value {
        case let a where a < 6:
            print(index)
        default:
            print(value)
        }
    }
    
    
    • if let 和 guard中,在swift4.0版本以后,使用逗号代替where
    let str : String? = "hello"
        
    if let value  = str, value.count == 5 {
        print(value)
    }
        
    guard let value  = str, value.count == 5  else { return }
    print(value)
  • 相关阅读:
    URLEncode解决url中有特殊字符的问题
    监控系统概览
    SpringBoot 上传文件夹
    关于postgresql报 ERROR: XXX does not exist
    postgresql学习
    git学习
    学习博客
    面试准备
    jvm
    线程池面试题
  • 原文地址:https://www.cnblogs.com/xujinzhong/p/12441921.html
Copyright © 2011-2022 走看看