如何将Scala Iterable转换为Java util.List?

时间:2018-10-10 17:31:56

标签: java scala apache-spark collections

我在Scala中编写了一种方法,该方法使用Java编写的方法-processSale()方法将util.List<Sale>作为参数。

但是在groupByKey()之后,我得到了RDD[(String, Iterable[Sale])]。我尝试导入scala.collection.JavaConverters._并执行SaleParser.processSale(a.asJava)

但是它给了我Iterable[Sale]。怎么可能将其转换为Java util.List

val parseSales: RDD[(String, Sale)] = rawSales
      .map(sale => sale.Id -> sale)
      .groupByKey()
      .mapValues(a => SaleParser.processSale(???))

1 个答案:

答案 0 :(得分:2)

a.toSeq.asJava

请注意,如果此Iterable实际上是Seq,则toSeq只会返回相同的对象。

有关转换的完整列表,请参见API doc