根据映射到列表的函数的结果过滤列表。哈斯克尔
我有一个对象列表,我希望通过每个元素的结果过滤这个列表到某个函数。我考虑过结合使用过滤器和地图功能,但我不确定。假设我有一个列表 [a,b,c,d] 并且我想在函数 f 应用于 a,b,c,d 时过滤此列表,它们返回值 n。如果 f(a) = n 且 f(d) = n,则结果列表将类似于 [a,d]。谢谢。
回答
这只是常规filter
。您可以指定应用f
和比较n
作为过滤条件:
list = [a,b,c,d]
filteredList = filter (x -> f x == n) list