文字列の配列があります。それを不変の文字列のセットに変える最良の方法は何ですか?
これは単一のメソッド呼び出しであると思いますが、scala docsで見つかりません。
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
のArray
メソッドは存在しません。ただし、暗黙的に ArrayOps に変換されます。
そのような場合は、 Predef を調べることをお勧めします。通常、適切な暗黙の変換がそこにあります。この場合、genericArrayOps
が使用されます。 genericWrapArray
も使用できますが、優先度は低くなります。
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)