我有一张将ids映射到整数的地图。我需要创建另一个映射,它将id映射到具有整数元组的特定类型(interval)。
val secondValue = 5
input: Map[Identifier, Integer]
val newInput: Map[Identifier, Interval] = input.map({
case (x, d) => (x -> Interval(d, secondValue))
})
Interval在文件中定义,并在此处导入。此代码不起作用,因为newInput未更改。你能指导我做错的地方吗?
所需的输入类型是标识符 - > Integer和newInput是Identifier - > [整数,整数],但我得到了标识符 - >输入和newInput的整数。
答案 0 :(得分:1)
由于您没有提供标识符和间隔,我创建了自己的标识符和间隔。正确初始化输入后,您的代码似乎正常工作:
case class Interval(x: Int, d: Int)
case class Identifier(x:Int)
val secondValue = 5
val input: Map[Identifier, Integer] = Map(Identifier(1) -> 10)
val newInput: Map[Identifier, Interval] = input.map({
case (x, d) =>
x -> Interval(d, secondValue)
})