我想在if结构中满足多个约束.我知道我们可以使用","(逗号)来解包多个值,但它们都必须成功解包.
例如 :
var str: String? = "Hello"
var x: Int? = 10
if let intValue = x, stringValue = str {
// do something here.
} else {
}
Run Code Online (Sandbox Code Playgroud)
我想如果其中一个条件成功解包,则会执行一个块.例如:
class CustomClass {
var x = 10
static func someValue() -> String? {
return "some"
}
}
var flag: Bool? = false
var x: Int? = 10
var status: String
Run Code Online (Sandbox Code Playgroud)
在这个我想要的任何一个customclass someValue函数或x值任何成功解包和标志为真然后代码执行
您可以创建一个元组并使用如下所示的开关:
switch (str, x) {
case (.Some,.Some):
print("Both have values")
case (.Some, nil):
print("String has a value")
case (nil, .Some):
print("Int has a value")
case (nil, nil):
print("Neither has a value")
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
82 次 |
| 最近记录: |