gpt4 book ai didi

swift - 如何访问案例的切换结果?

转载 作者:搜寻专家 更新时间:2023-11-01 06:49:18 24 4
gpt4 key购买 nike

如何访问示例 apple swift book 代码的 switch 语句结果?

我想我可以创建只返回 case 语句值的函数,但我试图理解这段代码。

enum ServerResponse {
case Result(String, String)
case Error(String)
}

let success = ServerResponse.Result("6:00 am", "8:09 pm")
let failure = ServerResponse.Error("Out of cheese.")

switch success {
case let .Result(sunrise, sunset):
let serverResponse = "Sunrise is at \(sunrise) and sunset is at \(sunset)."
case let .Error(error):
let serverResponse = "Failure... \(error)"
}

最佳答案

这个例子太做作了,一点用处都没有。考虑一下

enum ServerResponse {
case Result(String, String)
case Error(String)
}

for i in 1...100 {
let mySuccess: ServerResponse = {
let zeroOrOne = rand() % 2
if zeroOrOne == 0 {
return ServerResponse.Result("7:00 am", "8.09 pm")
} else {
return ServerResponse.Error("Out of cheese.")
}
}()

var serverResponse: String
switch mySuccess {
case let .Result(sunrise, sunset):
serverResponse = "Sunrise is at \(sunrise) and sunset as \(sunset)"
case let .Error(error):
serverResponse = "Failure... \(error)"
}

println(serverResponse)
}

要点是示例中的“成功”变量实际上应该是某个函数/子系统调用的结果赋值。为了 println() 的清晰度,我将它包裹在一个循环中

关于swift - 如何访问案例的切换结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24226167/

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