Попытка сделать что-то вроде этого ...
func test(a:Int?, b:Int?){
switch (a, b) {
case (nil, nil) : print("Neither")
case let (aa, nil) : print("A-only: \(aa)")
case let (nil, bb ) : print("B-only: \(bb)")
case let (aa, bb ) : print("A and B: \(aa) & \(bb)")
}
}
, где, как указано выше, и aa
, и bb
уже развернуты.
Ближайшее, что я мог придуматьэто ...
func test(a:Int?, b:Int?){
switch (a, b) {
case (nil, nil) : print("Neither")
case ( _, nil) : print("A-only: \(a!)")
case (nil, _) : print("B-only: \(b!)")
default : print("A and B: \(a!) & \(b!)")
}
}
... но я действительно ненавижу, что у меня есть такие явно развернутые значения.
Так можно ли это сделать?