我正在尝试在单个if let行中编写以下代码块:
if let amount = datasource?.incrementForCount?(count) { count += amount } else if let amount = datasource?.fixedIncrement { count += amount }
当我尝试类似的东西:
if let amount = datasource?.incrementForCount?(count) || let amount = datasource?.fixedIncrement { count += amount }
我有一个编译时错误。
我不认为这种情况可以使用where子句。
是否可以将两个if if语句组合成一个ORed语句?
试着用?操作符:
原文链接:https://www.f2er.com/swift/320297.htmlif let amount = datasource?.incrementForCount?(count) ?? datasource?.fixedIncrement { count += amount }
is it possible to combine the 2 if let statements into a single ORed one ?
可以有几个let语句,如
if let a = optionalA,b = optionalB { ... }
并且所有这些都应该返回非零值以通过。
但是如果你还想使用逻辑条件:
>可能只是一个>在任何let语句之前,应放在第一位