在数组上映射一个 void(不返回函数)

Ted*_*dNC 3 arrays dictionary uigesturerecognizer ios swift

标题是不言自明的,是否有任何映射方式,例如,addGestureRecognizerUIGestureRecognizers. 我一直在摆弄

recognizers.map(MyWebOutlet.addGestureRecognizer)
Run Code Online (Sandbox Code Playgroud)

但是由于内置 map 必须返回另一个数组,因此需要一个返回某种值的函数。我应该包装addGestureRecognizer另一个返回函数还是另一种更聪明的方法?

Ham*_*ish 10

map旨在从另一个数组中返回一个数组,该数组已对其应用了给定的转换(通过转换每个元素)。因此,您传递给它的函数自然必须返回转换后的元素。

在您的情况下,您实际上并没有转换元素,您只是想在函数的参数中使用它们。为此,您可以使用forEach.

recognizers.forEach(MyWebOutlet.addGestureRecognizer)
Run Code Online (Sandbox Code Playgroud)