首页 > 解决方案 > 无法解决编译错误

问题描述

我的函数返回以下类型

def someFunction(a:String) = Future[Tuple2[Option[List[Tag]],Option[PagingState]]]

我调用函数如下:

val listOptionFuture = someFunction("some string")

我无法flatMaplistOptionFuture. 我写了以下内容,但出现编译错误

listOptionFuture.flatMap((tagOption,pagingStateOption) => {  ... })

以上是映射从返回的值的正确方法Future吗?

标签: scala

解决方案


flatMap您编写的参数是一个 2 参数函数。你想要的是一个带有 Tuple2 的 1 参数函数(并且可以立即对其进行模式匹配):

listOptionFuture.flatMap{ case (tagOption,pagingStateOption) => {  ... }}

推荐阅读