这是我代码的相关部分:
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]
。我在这里想念什么?
答案 0 :(得分:2)
minK
的类型为List[Int]
,函数bottom
返回Iterable[Int]
。
将第一行更改为:
var minK = Iterable.empty[Int]
或使用toList
:
minK = bottom(100, e).toList