Swift中enum的使用3

2019-06-28  本文已影响0人  盖小聂
enum IntOrString {
    case IntValue(Int)
    case StringValue(String)
}

class ViewController: UIViewController {
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        //Swift中我们在一个集合中只能放同一个类型的元素,
        //enum可以带有值的特点,将类型信息封装到特定的enum中
        let mixed = [IntOrString.IntValue(1), IntOrString.StringValue("two"),IntOrString.IntValue(3)]
        for value in mixed {
            switch value {
            case let .IntValue(i): print(i * 2)
            case let .StringValue(s): print(s.capitalized)
            }
        }
    }
}

补充说明:

import UIKit
let mixed: [Any] = [1, “two”, 3]
//如果不指明类型,由于UIKit的存在将被推断为[NSObject]
let objectArray = [1, “two”, 3] 
上一篇 下一篇

猜你喜欢

热点阅读