Spark - 尝试调用和成功后获取元素

时间:2017-08-31 04:52:07

标签: scala apache-spark apache-spark-sql

val isGroup =
  Try(groupPower(Doc.productType.id),
      .contains(Doc.powerGroup.id,doc2.Doc.pOrdernum)).getorElse(0)

我理解上面的代码containsisGroup val分配了一个布尔值。但是,我希望pOrdernum或int成功,0 int on on contains语句失败,最后是.getorElse(0)语句。

我怎样才能做到这一点?我只需要它正在检查的值或第二个元素,如果它成功(返回true),则将值pOrdernum分配给isgroup val

1 个答案:

答案 0 :(得分:1)

我假设你想做这样的事情:

   val result:Int =
      Try{
        groupPower(Doc.productType.id).contains(Doc.powerGroup.id,doc2.Doc.pOrdernum)
        doc2.Doc.pOrdernum
      }.getorElse(0)

现在抛弃包含(即布尔值)的结果。如果没有发生异常,则返回doc2.Doc.pOrdernum