【发布时间】:2017-03-10 03:04:48
【问题描述】:
我正在尝试将高阶泛型函数作为参数传递给另一个泛型函数。但是,我完全无法让它发挥作用。以下是我想要实现的示例代码。
def foo[T](data: Seq[T]) = {
//some codes
}
def bar[U](id: Sring, fn: Seq[U] => Unit) = {
criteria match {
case x => data:Seq[String] = //some data;
fn(data)
case b => data:Seq[Int] = //some data;
fn(data)
case c => data:Seq[Char] = //some data;
fn(data)
}
}
bar("123", foo)
如果我运行代码,我会得到错误 - 类型不匹配 - 找到预期的 Seq[U] - Seq[String]
【问题讨论】:
标签: scala