我试图生成未包含在从1开始给定的名单间隔的列表,所以我写的代码扩展:斯卡拉错误 - 向前参考,如下图所示超过价值的定义
def comparatorInt(first: (Int,Int), second: (Int, Int)) = first._2 <= second._1
val list1 = List((93,97), (5,10),(15,20),(30,50), (76,90)).sortWith(comparatorInt)
var curr = 1
val res = for(x <- list1; tmp = curr; curr = x._2+1) yield(tmp,x._1-1)
这里我正在一个编译器错误
错误:前向参考延伸过值TMP的定义
懒惰VAL解析度=为(X < - list1的; TMP = C URR; curr = x._2 + 1)yield(tmp,x._1-1)
我无法找出问题的解决方法。请建议同样的解决方案。
非常感谢,这正是我所需要的。 我对斯卡拉还是一个新手,所以尽可能多地学习...会尽量继续提供您的建议。 :) –
这将是非常有益的,如果你可以建议一些链接指向学习scala的高级功能,否则我只有在尝试解决某些问题时才会了解这些方法。 –