我正在学习Swift 2
我有这段代码:
case .Login(let parameters):
return Alamofire.ParameterEncoding.JSON.encode(mutableURLRequest, parameters: parameters).0
case .GetUpComingRides(let parameters):
return Alamofire.ParameterEncoding.JSON.encode(mutableURLRequest, parameters: parameters).0
有很多冗余。我试过这个:
case .Login(let parameters), .GetUpComingRides(let parameters):
return Alamofire.ParameterEncoding.JSON.encode(mutableURLRequest, parameters: parameters).0
但我收到了immutable value 'parameters' was never used
;
如何检查多个案例陈述并获取值?
我觉得我在这里缺少一些简单的东西。
答案 0 :(得分:0)
在较新版本的Swift中,如果值的类型相同,则现在可以实现:
enum Foo {
case bar(Int), bas(Int)
}
var this = .random() ? Foo.bar(5) : Foo.bas(5)
switch this {
case .bar(let foo), .bas(let foo): print(foo) // Always prints 5
}