在同一表达式中,在 Scala 中同时使用值和分配变量

In same expression, simultaneously use value and assign variable in Scala

Scala 有没有办法给一个变量赋值,同时在表达式中使用这个值?像这样...

java.lang.Math.abs(scala.util.Random.nextInt()) / {val num = java.lang.Math.pow(10, (java.lang.Math.abs(scala.util.Random.nextInt() % 5) + 1)) } * num

我收到这个错误...

cannot be applied to (Unit)
       java.lang.Math.abs(scala.util.Random.nextInt()) / {val num = java.lang.Math.pow(10, java.lang.Math.abs(scala.util.Random.nextInt() % 7)) } * num

为了向下舍入到值“10”的变量幂,我想将一些随机整数分配给变量 "num" 同时在表达式中使用相同的值。这样我就可以确保 num 的值与除数相同,因为除数与乘数相同。我知道我在 scala 中看到了一些让我觉得我可以做到的东西......

您可以将 nums 放入一个 2 元素集合中,然后 reduce() 它。

Seq(Math.abs(util.Random.nextInt())
   ,Math.pow(10, Math.abs(util.Random.nextInt() % 5) + 1))
  .reduce((a,b) => /*use as many a's and b's as needed*/)