Swift中能否在#available语句中组合多条件判断?
在Swift的
if里同时用#available和自定义条件的正确写法 你不能用&&直接把#available和普通条件拼在一起,得换成逗号才行,这是Swift语法的要求。
正确代码示例:
if #available(iOS 16, *), fooBar == false { // 条件满足时执行的代码 }
为什么之前的写法报错?
#available不是普通的布尔表达式,它是Swift编译器用来做API可用性静态检查的特殊语法。编译器会单独处理这个条件,所以没法直接用&&和其他条件连接,必须用逗号来分隔(这里逗号的作用和&&一样,都是“同时满足”的意思)。
这样写既满足了系统版本要求,又能和自定义条件fooBar == false放在同一个if里,完全不用拆分逻辑重写代码。
内容的提问来源于stack exchange,提问作者aberst
相关产品推荐
相关产品推荐

