如何使用Prelude从haskell中的列表中删除每个值的发生? [英] How do I remove every occurance of a value from a list in haskell using Prelude?
本文介绍了如何使用Prelude从haskell中的列表中删除每个值的发生?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想从列表中删除每个特定值的发生。我写了一个函数来做到这一点:
removeall val [] = []
removeall val list = if头列表)== val
然后removeall val(尾列表)
else(头列表):( removeall val(尾列表))
但如果可能的话,我想使用Prelude,因为优雅和可读性的原因。 div>
removeall val list = filter(/ = val)list
I want to remove every occurance of a certain value from a list. I have written a function to do this:
removeall val [] = []
removeall val list = if (head list) == val
then removeall val (tail list)
else (head list):(removeall val (tail list))
but I would like to use Prelude if possible for reasons of elegance and readability.
解决方案
removeall val list = filter (/= val) list
这篇关于如何使用Prelude从haskell中的列表中删除每个值的发生?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文