我有一个泛型类,它将一些类型的泛型数据存储在一个数组中。
类
class TestClass<T> {
var data: [T]
// Constructor and some methods....
}
现在我想通过将过滤器闭包作为参数发布来实现获取已经过滤的数组的选项。我试过了:
过滤方法
class TestClass<T> {
typealias FilterBlock = (item: T) -> Bool
func getData(filter: FilterBlock) {
data.filter(filter)
}
}
但这会引发错误:
Cannot convert value of type '(item: T) -> Bool' to expected argument type '_ -> Bool'
有什么想法吗?