【发布时间】:2015-10-31 18:18:05
【问题描述】:
我有一个 Java 接口 Writer 定义如下:
public interface Writer<K, V> {
Iterator<Product2<K, V>> iterator ();
}
我正在尝试在 Scala 类 ExternalWriter 中实现此接口,如下所示:
private class ExternalWriter[K, V, C]
extends Logging
with Writer[K, V] {
override def iterator(): Iterator[Product2[K, C]] = {
partitionedIterator.flatMap(pair => pair._2)
}
}
但是当我尝试编译这段代码时,我得到一个错误:
错误:在特征 SortShuffleFileWriter 中覆盖方法迭代器 类型 ()Iterator[Product2[K,V]];方法迭代器具有不兼容的类型 覆盖 def iterator(): Iterator[Product2[K, C]] = {
我该如何解决这个问题?
【问题讨论】:
-
java.util.Iterator接口与scala.collection.Iterator特征是分开的(除了@Codebender 提到的问题)。你有没有考虑到这一点?