首页 > 代码库 > Swift的if let和guard let的使用 <一看就等哟>

Swift的if let和guard let的使用 <一看就等哟>

////  ViewController.swift//  可选项的判断////  Created by 思 彭 on 16/9/16.//  Copyright © 2016年 思 彭. All rights reserved.//import UIKitclass ViewController: UIViewController {    override func viewDidLoad() {        super.viewDidLoad()        //        demo1(x: 20, y: nil)        demo3()    }    // MARK: - 一般写法    func demo(x: Int?,y: Int?) {        // 1. 强行解包有风险        print(x! + y!)        // 2.使用if判断  直接使用if,使代码看起来很丑陋        if x != nil && y != nil {            print(x! + y!)        }        else{            print("x或者y为nil")        }    }        //MARK: - ??的使用    func demo1(x: Int?,y: Int?) {            // 记得括号括起来        print((x ?? 0) + (y ?? 0))  //20                let name: String? = nil        print((name ?? "") + ("你好"))  //你好        // 注意: ??优先级低        print(name ?? "" + "思思") // 思思    }        // MARK: - if let/var的使用        func demo2() {             let userName: String? = "思思"        let age: Int? = 20                // 判断变量的值是否为nil,有值进入分支,不需要解包        if var name = userName,age = age{            name = "加油"            age = 30            print(name + String(age))        }        else{            print("name或者是age为nil")        }    }    // MARK: - guard let的使用    // 守护有值,和if let相反 ,逻辑代码少降低分支的层次    func demo3() {                let userName: String? = "思思"        let age: Int? = 20        guard let name = userName,oage = age else {                        print("name或者是age为nil")            return;        }        print(name + String(age))            }}

 

Swift的if let和guard let的使用 <一看就等哟>