使用 flatMap 设置增量

问题描述 投票:0回答:1

我有一个可变集并从输入为其分配值

var set = scala.collection.mutable.Set[Int]() set ++= (in.readLine().split(" ").map(_.toInt))

输入:
1 5

实际产量:
1,5

所需输出:
1,2,3,4,5

我已经使用了带有条件的 flatMap,但出现了错误。如何用 flatMap 实现这一点

scala
1个回答
1
投票

我假设你总是有一个像“2 5”这样的字符串作为输入:

解决方案可能如下所示:

def toSeq(value: String): Seq[Int] = {
  value.split(" ")
  .map(_.toInt).toList match {
    case x1::x2::_ => x1 to x2
    case other => Nil// handle Exception
  }
}
println(toSeq("1 5").toList)

请注意,输入未经验证!

© www.soinside.com 2019 - 2024. All rights reserved.