您好,我使用的是最新的Xcode 7 beta 6,并且似乎是阵列过滤方法的问题。
在以下示例中,我尝试重现此: 搜索数组,如果你发现任何大于40的数字扔掉它们,你做完所有返回数组过滤后。它曾经与Xcode 6.4一起使用,但现在它并不是我在这里缺少什么?一旦我输入过滤器并按下回车,我会得到这个:
(includeElement: (Self.Generator.Element) throws -> Bool
这是Xcode 6.4的代码
var someIntArray2 = [1,34,56,92,12,32,124,23,1293]
someIntArray2.filter({$0 < $40})
答案 0 :(得分:2)
扩展我以前的评论:
在someIntArray2.filter({$0 < $40})
中,$40
正在检查传递给闭包的第40个参数,并将第0个参数与它进行比较,但filter
方法所需的闭包只需要一个参数
该行应该转换为someIntArray2.filter({$0 < 40})
,它会将传递的参数与数字40 进行比较。
(由于闭包是函数的最后一个参数,因此也可以删除将该行转换为someIntArray2.filter{$0 < 40}
的括号)