krr*_*r38 4 double for-loop scala
它可以像波纹管一样使用
val ls = for(i <- 1 to 5) yield i
Run Code Online (Sandbox Code Playgroud)
但是不可能使用它
val la:Double = 100000000000000d
val ls = for(i <- la to la + 1) yield i
Run Code Online (Sandbox Code Playgroud)
因为如果这个元素是双,以创建Range.Partial [双,scala.collection.immutable.NumericRange [双]不具有映射.
为了与循环使用双,如何处理呢?
我认为你需要指定的方法by,将范围从转换Range.Partial[Double,scala.collection.immutable.NumericRange[Double]]成scala.collection.immutable.NumericRange[Double]
例如
for (i <- la to la + 1 by 1.0) yield i
Run Code Online (Sandbox Code Playgroud)
更新
在scala.collection.immutable.Range.Partial课程的scala源代码中,您可以看到它们背后的推理.
与使用整数范围不同,无法知道范围的默认步长.
| 归档时间: |
|
| 查看次数: |
1493 次 |
| 最近记录: |