scala – 过滤(A,选项[B])列表并从Option中提取值

前端之家收集整理的这篇文章主要介绍了scala – 过滤(A,选项[B])列表并从Option中提取值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个清单[(A,选项[B])].我想过滤掉第二个元素中包含None的所有元组,然后“解包”Option,给出一个List [A,B].

我目前正在使用这个:

list.filter(_._2.isDefined).map(tup => (tup._1,tup._2.get))

有更好的方法(更简洁)吗?

解决方法

您可以使用模式匹配并收集:

list.collect { case (a,Some(b)) => (a,b) }

猜你在找的Scala相关文章