如何在scala中组合过滤器和地图?
发布时间:2020-12-16 09:27:31 所属栏目:安全 来源:网络整理
导读:我在Scala中有List [Int].清单是清单(1,2,3,4,5,6,7,8,9,10).我想过滤列表,使其只有偶数.而且我想用2代数.这有可能吗? 我希望我已经清楚地解释了这个问题.如果您有任何疑问,请询问.提前致谢. 解决方法 正如我在评论中所述,收集应该做你想要的: list.collec
我在Scala中有List [Int].清单是清单(1,2,3,4,5,6,7,8,9,10).我想过滤列表,使其只有偶数.而且我想用2代数.这有可能吗?
我希望我已经清楚地解释了这个问题.如果您有任何疑问,请询问.提前致谢. 解决方法
正如我在评论中所述,收集应该做你想要的:
list.collect{ case x if x % 2 == 0 => x*2 } collect方法允许您指定匹配元素(过滤器)的条件并修改匹配的值(map) 正如@TravisBrown建议的那样,您也可以使用flatMap,特别是在条件更复杂且不适合作为保护条件的情况下.对于你的例子,这样的事情: list.flatMap{ case x if x % 2 == 0 => Some(x*2) case x => None } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |