繁体   English   中英

将对象的Java ArrayList转换为Scala seq

[英]Convert Java ArrayList of objects to scala seq

我在Java中有ArrayList ,其中包含Row类型的对象,如下所示

List<Row> Table = new ArrayList<Row>();

我需要将此表转换为Scala Seq ,以便稍后将其转换为数据帧。 我尝试了以下但没有成功

var TableScala:Seq[Row] = 
            Table.asScalaJavaConverters.asScalaBufferConverter(getTable).asScala

val newList = TableScala.map(row => new Tuple5(row(0), row(1), row(2), row(3), row(4)))
spark.createDataFrame(newList).toDF("userID")

从Scala 2.8.1开始,使用“ scala.collection.JavaConverters ._” API明确显示了这些转换。 以下代码显示了使用此api进行的相同转换。

首次导入

import scala.collection.JavaConverters._

Java列表

List<Row> javaList = new ArrayList<Row>();

使用“ asScala”将Java列表转换为Scala列表

val scalaList = javaList.asScala
val squareList = scalaList.map(value => value*value)
println("square list is" + squareList)

参考: http : //blog.madhukaraphatak.com/converting-java-collections-to-scala/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM