gpt4 book ai didi

swift - 比较枚举与关联值短语法

转载 作者:搜寻专家 更新时间:2023-10-31 19:33:18 35 4
gpt4 key购买 nike

我在努力简化

var isReachable = {
switch status {
case .reachable: return true
default: return false
}
}()

类似于

var isReachable = (case status == .reachable)

这里是完整的例子:

enum NetworkReachabilityStatus {
case unknown
case notReachable
case reachable(Alamofire.NetworkReachabilityManager.ConnectionType)
}

NetworkReachabilityManager().listener = { status in
var isReachable = {
switch status {
case .reachable: return true
default: return false
}
}()
}

只有在处理具有关联值的枚举时才会出现这个问题。有什么建议吗?

最佳答案

NetworkReachabilityStatus 的扩展可以使这项工作成功。

extension NetworkReachabilityStatus {
var isReachable: Bool {
switch self {
case .reachable(_): return true
default: return false
}
}
}

NetworkReachabilityManager().listener = { status in
var isReachable = status.isReachable
}

关于swift - 比较枚举与关联值短语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40620607/

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