加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

for-loop with Double in Scala

发布时间:2020-12-16 10:04:07 所属栏目:安全 来源:网络整理
导读:它可以像波纹管一样使用 val ls = for(i - 1 to 5) yield i 但是不可能使用它 val la:Double = 100000000000000dval ls = for(i - la to la + 1) yield i 因为如果元素是Double,则创建没有map的Range.Partial [Double,scala.collection.immutable.NumericRan
它可以像波纹管一样使用

val ls = for(i <- 1 to 5) yield i

但是不可能使用它

val la:Double = 100000000000000d
val ls = for(i <- la to la + 1) yield i

因为如果元素是Double,则创建没有map的Range.Partial [Double,scala.collection.immutable.NumericRange [Double]].

要使用双循环for循环,如何处理它?

解决方法

我认为您需要指定方法,将范围从Range.Partial [Double,scala.collection.immutable.NumericRange [Double]]转换为scala.collection.immutable.NumericRange [Double]

例如

for (i <- la to la + 1 by 1.0) yield i

更新

在scala.collection.immutable.Range.Partial类的scala源代码中,您可以看到它们背后的reasoning.

与使用整数范围不同,无法知道范围的默认步长.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读