0

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 中看到了一些让我觉得我可以做到这一点的东西......

4

1 回答 1

1

您可以将您的 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*/)
于 2017-11-15T09:08:55.950 回答