Scala 如何将数组[String]转换为集合[String]?

Scala 如何将数组[String]转换为集合[String]?,scala,scala-collections,Scala,Scala Collections,我有一个字符串数组。将其转换为不可变字符串集的最佳方法是什么 我假定这是一个方法调用,但在scala文档中找不到它 我正在使用scala 2.8.1。此方法称为toSet,例如: scala> val arr = Array("a", "b", "c") arr: Array[java.lang.String] = Array(a, b, c) scala> arr.toSet res1: scala.collection.immutable.Set[java.lang.Strin

我有一个字符串数组。将其转换为不可变字符串集的最佳方法是什么

我假定这是一个方法调用,但在scala文档中找不到它


我正在使用scala 2.8.1。

此方法称为
toSet
,例如:

scala> val arr = Array("a", "b", "c")
arr: Array[java.lang.String] = Array(a, b, c)

scala> arr.toSet
res1: scala.collection.immutable.Set[java.lang.String] = Set(a, b, c)
在这种情况下,
toSet
方法对于
数组
不存在。但有一个隐含的转变


在这种情况下,我可以建议你进去看看。通常,您应该在那里找到一些合适的隐式转换<在这种情况下,将使用code>genericArrayOps
genericWrapArray
也可以使用,但优先级较低

一点评论。。。我喜欢Set(a:*)而不是.toSet的唯一原因是如果我想要一个可变集,例如
collection.mutable.Set(a:*)
scala> val a = Array("a", "b", "c")
a: Array[java.lang.String] = Array(a, b, c)

scala> Set(a: _*)
res0: scala.collection.immutable.Set[java.lang.String] = Set(a, b, c)

// OR    

scala> a.toSet
res1: scala.collection.immutable.Set[java.lang.String] = Set(a, b, c)