gpt4 book ai didi

swift - 我可以在案例模式中使用强制转换吗?

转载 作者:可可西里 更新时间:2023-11-01 00:23:07 26 4
gpt4 key购买 nike

我在枚举类型上有一个 switch case 语句,在 Swift 中有关联值:

enum Foo {
case Something(let s: Any)
// …
}

我想在模式匹配中使用强制转换,有点像这样:

let foo: Foo = // …
switch foo {
case .Something(let a as? SpecificType):
// …
}

换句话说,我希望案例模式只有在转换成功时才会成功。这可能吗?

最佳答案

您的示例基本上按原样工作:

enum Foo {
case Something(s: Any)
}

let foo = Foo.Something(s: "Success")
switch foo {
case .Something(let a as String):
print(a)
default:
print("Fail")
}

如果您将“成功”替换为例如数字 1 它将打印“失败”。这是你想要的吗?

关于swift - 我可以在案例模式中使用强制转换吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35196433/

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