从Java集到 Scala 集的转换
通过导入JavaConversions.asScalaSet方法,可以将Java Set 转换为 Scala Set。在这里,我们需要调用以Java Set 作为参数的asScalaSet方法。因此,此方法返回一个 Scala Set。
现在,让我们看一些例子。
示例:1#
// Scala program of converting a Java Set
// to a Scala Set
// Importing JavaConversions.asScalaSet
import scala.collection.JavaConversions.asScalaSet
// Creating object
object GfG
{
// Main method
def main(args:Array[String])
{
// Creating a Java List
val jlist = java.util.Arrays.asList(14, 15, 16)
// Creating a java Set
val jSet = new java.util.HashSet[Int]()
// Adding all the elements of the
// list to the set
val x = jSet.addAll(jlist)
// Converting from java Set
// to Scala Set
val results = asScalaSet(jSet)
// Displays results
println(results)
}
}
输出:
Set(14, 15, 16)
因此,这里返回了一个 Scala Set。在上面的例子中,首先,我们创建了一个Java列表,然后我们声明了一个Java集合,其中,我们使用addAll方法将Java列表的所有元素添加到Java集合中。之后,使用asScalaSet方法将所述Java Set 转换为 Scala Set。
让我们再看一个例子。
示例:2#
// Scala program of converting a Java list
// to a Scala Buffer
// Importing JavaConversions.asScalaSet
import scala.collection.JavaConversions.asScalaSet
// Creating object
object GfG
{
// Main method
def main(args:Array[String])
{
// Creating a Java List
val jlist = java.util.Arrays.asList(11, 9, 5)
// Creating a java Set
val jSet = new java.util.HashSet[Int]()
// Adding all the elements of the
// list to the set
val x = jSet.addAll(jlist)
// Converting from java Set
// to Scala Set
val results = asScalaSet(jSet)
// Displays results
println(results)
}
}
输出:
Set(5, 9, 11)
因此,这里也返回了一个 Set。此外,此处列出的列表以正确的顺序给出,但 Set 需要以正确的顺序,因此,作为输出返回的 Set 的顺序正确。