Scala map将输入拆分为int和string?

时间:2015-06-10 18:27:39

标签: scala dictionary

通常情况下,如果我从stdin读取一行看起来像“100 200”的输入,我可以将它们存储为这行的整数:

val Array(a, b) = readLine.split(" ").map(_.toInt);

但是如果a是一个整数而b是一个字符串呢?

2 个答案:

答案 0 :(得分:2)

您无法将不同类型的值存储到同类容器中,例如Array。 如果您知道基数,只需将它们存储在单独的变量中即可。

val input = "100 foo"
val Array(a, b) = input.split(" ")

val p1 = scala.util.Try(a.toInt)
val p2 = b

我使用scala.util.Try因为toInt可能会失败并抛出异常

答案 1 :(得分:-1)

__dict__