在Scala 2.12.x中,我有以下示例,但未产生预期的结果:
val result = Stream.iterate(0)(_ + 10).takeWhile(_ < 100)
println(result)
// outputs:
// Stream(0, ?)
// while I expected:
// Stream(0, 10, 20, 30, 40, 50, 60, 70, 80, 90, ?)
我在这里做什么错了?
答案 0 :(得分:2)
您的流只有在将其转换为非惰性集合后才会实现:
Stream.iterate(0)(_ + 10).takeWhile(_ < 100).toList