假设我有一个带有关联值的枚举案例,以及该枚举类型的两个变量:
enum MyEnum {
case foo, bar(_ prop: Int)
}
let var1 = MyEnum.foo
let var2 = MyEnum.bar(1)
如果我想检查两个变量是否与关联值的一般情况相匹配,我可以用逗号来做到这一点:
if case .bar = var1, case .bar = var2 {
print("both are bar")
}
但我需要检查是否符合案例,如下所示:
if case .bar = var1 || case .bar = var2 {
print("at least one is bar")
}
但是,这不会编译。是否有另一种方法可以编写此代码以使逻辑正常工作?