加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Scala中的多个Option值

发布时间:2020-12-16 08:50:22 所属栏目:安全 来源:网络整理
导读:我正在解析三个请求参数,所有这些参数都包含在Option类型中.如果这些选项中的任何一个是None,那么我想返回400错误.如何检查这些返回值是否为None类型? 解决方法 为什么不这样呢? if (o1.isEmpty || o2.isEmpty || o3.isEmpty) BadRequest("Foo") Alternati
我正在解析三个请求参数,所有这些参数都包含在Option类型中.如果这些选项中的任何一个是None,那么我想返回400错误.如何检查这些返回值是否为None类型?

解决方法

为什么不这样呢?

if (o1.isEmpty || o2.isEmpty || o3.isEmpty) BadRequest("Foo")

Alternativeley取决于您的实现,您可能在某种集合中有您的选择.然后你可以使用exists

if (parsedRequestParameters.exists(_.isEmpty)) BadRequest("Foo")

您可能想要的第三种选择,以防您想要对选项的内容执行某些操作:

val response = for {
  v1 <- o1
  v2 <- o2
  v3 <- o3
} yield <some response depending on the values of o1..o3>

response getOrElse BadRequest("something wasn't specified")

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读