得到了一个奇怪的scala for-loop问题。我的目标是输出一个饲料日列表,例如A-20170531'。代码非常简单,但是当我在Intellij中运行时,第二个输出缺少feed,它就像' - 20170531' 。然后我将代码复制到scala shell,它按预期工作。
有什么想法吗?
var feeds =
"""
|A
|B
|C
""".stripMargin
var days =
"""
|20170531
|20170601
""".stripMargin
var dayArr = days.split("\n").filter(_.trim.length != 0)
var feedArr = feeds.split("\n").filter(_.trim.length != 0)
System.out.println("feed size:"+feedArr.length )
for{
feed <- feedArr
} {
System.out.println(feed)
}
for{
feed <- feedArr
day1 <- dayArr
} {
System.out.println(feed+"--"+day1)
}
感谢。
答案 0 :(得分:0)
无法重现。 Scala 2.12.3,IntelliJ IDEA 2017.2.3(Build#IU-172.3968.16,建于2017年8月22日)。 输出:
feed size:3
A
B
C
A--20170531
A--20170601
B--20170531
B--20170601
C--20170531
C--20170601
你的Scala和IntelliJ是什么?
仍然无法使用Scala 2.10.6和每个
重现IntelliJ IDEA 2016.1.4(Build#IU-145.2070,建于2016年8月2日)
IntelliJ IDEA 2016.1.3(Build#IU-145.1617,建于2016年6月3日)
我没有2016.1.2。
看起来像一些奇怪的错误。尝试更新IntelliJ。