我有一个枚举:
enum RetailDemandReturnOperation {
case salesReturn(value: MSRetailSalesReturnRealm)
case demand(value: MSRetailDemandRealm)
}
MSRetailDemandRealm
和MSRetailDemandRealm
都实现了同一个协议,该协议具有变量title和stats。 我想提取这些值,但我不关心实际存储在哪个对象中。考虑以下内容:
switch data! {
case .salesReturn(let object):
titleString = object.title
statistics = object.stats
case .demand(let object):
titleString = object.title
statistics = object.stats
break
}
我需要进入每个枚举值来获取协议属性,有没有更简短、更清晰的方法?获取关联值,无论它是什么,只要符合我的协议,就可以获取协议值?谢谢。