我有一个方法可以对传递给它的集合执行一些操作。此方法将由具有不同类型的不同其他方法调用,但方法中包含的逻辑将是相同的。它只是改变的类型。
private def operateMethod[T](newSeq: Seq[T, Double], oldSeq: Seq[T, Double]): Seq[T, Double] = {
val newSeqMap = newSeq.groupBy(_._1).mapValues(_.foldLeft(0.0)((total, current) => total + current._2))
}
但编译器似乎不满意访问类型值._1和._2。如何解决这个问题?
答案 0 :(得分:4)
Tuple2[T, Double]
的序列是Seq[(T, Double)]
,而不是Seq[T, Double]
:
private def operateMethod[T](newSeq: Seq[(T, Double)], oldSeq: Seq[(T, Double])): Seq[(T, Double)] = { ... }