如何比较从Option [Long] scala获得的值

时间:2015-07-28 00:04:23

标签: scala

这是代码段:

OS.config flatMap {_.Allocation } flatMap {_.memory} 

memory参数获得的值为Option[Long]

如何比较并检查它是否大于零?

我尝试使用过滤器,但获得的答案是Option[Boolean]。我需要检查许多对象,如果值大于零,则增加计数器。

2 个答案:

答案 0 :(得分:4)

您可以使用exists方法。当在一个选项上运行时,此方法接受一个返回布尔值的函数。如果您的选项为无,则返回false。

例如

scala> var x = Some(123)
x: Some[Int] = Some(123)

scala> x.exists(_ > 0)
res0: Boolean = true

scala> x.exists(_ < 0)
res1: Boolean = false

答案 1 :(得分:2)

如果未指定fold,您可false获取0或检查其是否大于(OS.config flatMap {_.Allocation } flatMap {_.memory}).fold(false)(_ > 0)

echo $ssh->exec('/tpo/umc/bin/cmu_monitoring_dump -n r02bv01 -m cpunumber -t0 "$start" -t1 "$end" -f line> /tmp/adwant.txt');