📅  最后修改于: 2023-12-03 15:23:18.708000             🧑  作者: Mango
在 Scala 中,我们可以通过 JavaConverters
工具类将 Java Set 转换为 Scala 的可遍历对象(如 List
、Set
、Seq
等)。
import java.util.{HashSet => JavaSet} // 引入 Java Set 类
import scala.collection.JavaConverters._
val javaSet: JavaSet[String] = new JavaSet[String]() // 创建 Java Set 对象
javaSet.add("Apple")
javaSet.add("Banana")
javaSet.add("Cherry")
val traversableSet = javaSet.asScala // 将 Java Set 转换为 Scala Set
traversableSet.foreach(println) // 打印遍历结果
import java.util.{HashSet => JavaSet}
:引入 Java Set 类,并给它取个别名 JavaSet
,避免与 Scala 的 Set
类重名。import scala.collection.JavaConverters._
:引入 JavaConverters
工具类,用于将 Java 类型转换为 Scala 类型。val javaSet: JavaSet[String] = new JavaSet[String]()
:创建一个 Java Set 对象,并指定泛型为 String
。javaSet.add("Apple")
、javaSet.add("Banana")
、javaSet.add("Cherry")
:向 Java Set 中添加元素。val traversableSet = javaSet.asScala
:将 Java Set 转换为 Scala Set,并将结果赋值给 traversableSet
。traversableSet.foreach(println)
:遍历 traversableSet
,并将每个元素打印到控制台上。JavaConverters
工具类时,要确保导入该工具类的 _
版本,如:import scala.collection.JavaConverters._
。Java Set
时,需要为它的泛型参数指定类型,如:JavaSet[String]
。Java Set
的元素时,需要显式转换为对应的类型。如示例中的 javaSet.asScala
方法,需要显式转换为 Scala Set
。