如何将 Scala 数组转换为 Java 列表?

Ayu*_*ush 2 collections scala scala-collections

我想将Scala数组转换为Java列表。

val legends = Array("0-500", "500-1000", "1000-2000", "2000-3000", "3000+")

到 Java 列表。

Dim*_*ima 10

将 java 数组转换为列表的方式相同(scala 数组与 java 相同,因此也就不足为奇了):

java.util.Arrays.asList(legends:_*)

:_*被称为splat。需要告诉编译器您希望将数组元素作为单独的 varags 参数传递,而不是将整个数组作为一个参数传递。

或者你可以明确地做到这一点:

import scala.collection.JavaConverters._
val javaList = legends.toList.asJava
Run Code Online (Sandbox Code Playgroud)

或隐含地:

import scala.collection.JavaConversions._
val javaList: java.util.List[String] = legends.toList
Run Code Online (Sandbox Code Playgroud)