【LearnSwift】怎么使用?和!

参考文章

  • swift知识点 [1]
  • Swift Optionals: When to use if let, when ? and !, when as? and as

下载源码

下载地址

源码

【LearnSwift】怎么使用?和!_第1张图片
Optional文档
【LearnSwift】怎么使用?和!_第2张图片
ImplicitlyUnwrappedOptional文档
import UIKit

class ViewController: UIViewController {

    var a1: Int?
    var a2: Optional
    
    var b1: Int!
    var b2: ImplicitlyUnwrappedOptional
    
    var c: Int = 10
    
    let label: UIView = UIView(frame: CGRectZero)
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        a1 = 10
        a2 = 10
        
        b1 = 10
        b2 = 10
        
        print(a1)
        print(a2)
        
        print(b1)
        print(b2)
        
        print(c)
        
        // 结论
        // var a1: Int? = 10 相当于 var a2: Optional = Optional(100)
        // !的用法同上类比
        
        // as 和 as? 实现类型转换
        let someView = label as? UILabel
        
        if someView is UILabel? {
        
            print(someView)
        }

    }


}  
打印结果

你可能感兴趣的:(【LearnSwift】怎么使用?和!)