一种在Scala中提取Option [JsValue]中字段值的更好方法?

问题描述 投票:0回答:1

我在JsObject中有一个要分配给Map中特定键的值,我想问问是否有更好的方法可以在不使用大小写匹配器的情况下提取该值。

我可以访问request变量,该变量是具有参数myData的案例类。

myData

是一个包含多个字段的Option [JsValue],我想以字符串格式返回一个特定字段的布尔值,该字段称为“ myField”。下面的方法有效,但是我想找到一种更简洁的方法来获取“ myField”的值而无需大小写匹配。
val newMap =
Map(
“myNewKey” -> request.myData.map(_ match {
case JsObject(fields) => fields.getOrElse(“myField”, "unknown").toString
case _ => “unknown”})

输出将是

"myField": "true"

"myField": "false"

或如果它不是对或错,即该字段不存在

"myField": "unknown"

我在JsObject中有一个值,希望将其分配给Map中的特定键,我想问问是否有更好的方法可以在不使用大小写匹配器的情况下提取该值。我可以访问请求...

json scala pattern-matching optional
1个回答
0
投票

而是:

© www.soinside.com 2019 - 2024. All rights reserved.