zoukankan      html  css  js  c++  java
  • Swift

    1.Guard语句的语法

    guard expression else { 
        //语句
        //必须包含一个控制语句:return,break,continue或throw。
    }
    • 这里,expression是一个布尔表达式(返回true或者false)。
    • 如果对表达式求值falseguard则执行代码块内的语句
    • 如果对表达式求值trueguard则从执行中跳过代码块内的语句

    2.函数内guard语句

    func someFunction() {
    
        guard false else {
            print("Condition not met")
            return
        }
        print("Condition met")
    }
    
    someFunction()
    print("Hello after function call")

     示例4:使用选项保护

    func changeOptionalStringToUpperCase() {
    
        var name:String?
        guard let temp = name else {
            print("Name is nil. Cannot process")
            return
        }
        print("Uppercased:(temp.uppercased())")
    }
    
    changeOptionalStringToUpperCase()

     示例5:具有多个条件的保护

    
    
    func changeOptionalStringToUpperCase() {
    	var name:String? = ""
    	guard let temp = name , temp.count > 0  else {
    		print("Name is nil or an empty string. Cannot process")
    		return
    	}
    	print("Uppercased:(temp.uppercased())")
    }
    
    changeOptionalStringToUpperCase()
    1 //guard----控制语句执行 即守护
     2  2 let oAge: Int? = 20
     3  3 //在swift3.0中,if-let和guard语句中的where都用“,”替代了
     4  4 if let age = oAge , age > 18 {
     5  5     print(age)
     6  6 }
     7  7 func guardTest(){
     8  8     let bAge:Int? = 30
     9  9     guard let age = bAge , age > 18 else {
    10 10         print("年龄小于18岁")
    11 11         return
    12 12     }
    13 13     print(age)
    14 14 }
    15 15 var aa: Int?? = 20
    16 16 guardTest()
  • 相关阅读:
    delphi利用qdac qworker计划任务
    delphi libssh2 无法立即完成一个非阻止性套接字操作
    线程池底层原理
    【spring源码分析】二、Spring扩展点的归总
    【spring源码分析】一、spring Refresh流程
    Spring中常用的类
    设计模式-proxy
    SpringAOP
    SpringIOC
    难受,nginx worker进程内存持续飘升!
  • 原文地址:https://www.cnblogs.com/edensyd/p/9566979.html
Copyright © 2011-2022 走看看