我有下面的代码:如何处理自选switch语句中
for compareValues in [(optionalVal1, optionalVal2), (optionalVal3, optionalVal4)] {
switch compareValues {
case (nil, nil):
break
case (_, nil):
return true
case (nil, _):
return false
case let (lValue, rValue):
return lValue < rValue
}
}
这并不编译,最后一行触发此错误:
Value of optional type 'String?' not unwrapped; did you mean to use '!' or '?'?
你会如何建议处理这个没有被迫展开lValue
和rValue
?
为什么不强制解包?只有4个案件,所有'零'案件已经被覆盖。 – vadian