将Java列表转换为Scala Seq
问题内容:
我需要Seq
在Java中实现一个返回Scala的方法。
但是我遇到这个错误:
java.util.ArrayList cannot be cast to scala.collection.Seq
到目前为止,这是我的代码:
@Override
public Seq<String> columnNames() {
List<String> a = new ArrayList<String>();
a.add("john");
a.add("mary");
Seq<String> b = (scala.collection.Seq<String>) a;
return b;
}
但scala.collection.JavaConverters
似乎没有提供将其转换为的可能性Seq
。
问题答案:
我需要JavaConverters来解决这个问题。
import scala.collection.JavaConverters;
public Seq<String> convertListToSeq(List<String> inputList) {
return JavaConverters.asScalaIteratorConverter(inputList.iterator()).asScala().toSeq();
}