gpt4 book ai didi

swift - 模式匹配有多个case怎么办?

转载 作者:IT王子 更新时间:2023-10-29 05:21:27 25 4
gpt4 key购买 nike

我正在搜索在 if case 语句中对多个案例进行模式匹配的语法。这个例子是这样的:

enum Gender {
case Male, Female, Transgender
}

let a = Gender.Male

现在我想检查 a 是 .Male 还是 .Female。但我想避免为此使用开关。然而 switch 语句将是这样的:

switch a {
case .Male, .Female:
// do something
}

是否可以用 if case 来写这个?我期待这个,但它没有用:(

if case .Male, .Female = a {

}

最佳答案

一个简单的数组就可以了:

if [.Male, .Female].contains(a) {
print("Male or female")
} else {
print("Transgender")
}

我对 Swift 推断类型的能力感到非常惊讶。在这里,它得到 .Male.Female 是来自 a 的性别类型。

关于swift - 模式匹配有多个case怎么办?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39333716/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com