类型符合错误:可迭代[Int]到预期的类型列表[Int]

时间:2019-04-04 14:45:08

标签: scala

这是我代码的相关部分:

  var minK = List.empty[Int]
  while(it.hasNext){
    val s = it.next()
    val sig = MH3.stringHash(s.srcId.toString, 0)
    val sig2 = MH3.stringHash(s.dstId.toString, 0)
    val e = minK:+sig:+sig2
    minK = bottom(100, e)
  }

底部函数的签名如下:

def bottom[T](n: Int, li: List[T])
           (implicit ord: Ordering[T]): Iterable[T]

在代码的最后一行出现错误。编译器抱怨Expression of type Iterable[Int] doesn't conform to expected type List[Int]。但是e的类型是List[Int]。我在这里想念什么?

1 个答案:

答案 0 :(得分:2)

minK的类型为List[Int],函数bottom返回Iterable[Int]

将第一行更改为:

var minK = Iterable.empty[Int]

或使用toList

minK = bottom(100, e).toList