我有一个数组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/