Scala集合操作:flatMap、filter、提取元素及归约方法的使用
1. flatMap的使用
在处理集合时,我们有时会遇到需要先使用 map 再使用 flatten 的情况。实际上,这种场景下可以直接使用 flatMap 。
1.1 示例一:计算字符串列表中可转换为整数的元素之和
假设有一个字符串列表 bag ,其中部分字符串可以转换为整数,部分不能:
val bag = List("1", "2", "three", "4", "one hundred seventy five")
首先,我们创建一个将字符串转换为整数的方法 toInt ,该方法返回 Option[Int] 类型:
def toInt(in: String): Option[Int] = {
try {
Some(Integer.parseInt(in.trim))
} catch {
case e: Exception => None
}
}
然后,使用 flatMap 和 sum 方法计算可转换为整数的元素之和:
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



