我如何使用AS与swift中的开关来获取类类型



我有一个数组SomeClass,它是各种其他类的超类。
数组中包含所有这些随机类。
是否有办法使用switch(而不是else if let something = elm as? TheSubClassType)

伪代码:

for AObjectOfTypeSomeClass in MyBigArray{
  switch the_type_of(AObjectOfTypeSomeClass){
    case SubClass1:
        let O = AObjectOfTypeSomeClass as! SubClass1
    ...
    ...
    ...
  }
}

你差一点。

for objectOfSomeClass in MyBigArray {
    switch objectOfSomeClass {
    case let subClass as SubClass1:
        // Do what you want with subClass
    default:
        // Object isn't the subclass do something else
    }
}

这个网站有我发现的最好的模式匹配纲要。http://appventure.me/2015/08/20/swift-pattern-matching-in-detail/

相关内容

  • 没有找到相关文章

最新更新