我有这段代码可以正常工作:
var discoverEvents = events.map { event in
userEvents.find { $0.eventID == event.eventID } ?? event
}
我想知道是否有任何方法可以通过内部位置引用event
find
以某种方式:
var discoverEvents = events.map { userEvents.find { $$0.eventID == $0.eventID } ?? $0 }
让它变成一行?
不,这是不可能的。内部$0
遮蔽外部,没有其他方法可以引用外部范围内的$0
。
正如@DavidBerry提到的,该语法适用于简短的匿名函数。否则事情可能会变得非常混乱。