Преобразовать массив в изменяемый набор в Scala? Как преобразовать Array Scala в mutable.Set? Это легко преобразовать в immutable.Set. Array(1, 2, 3).toSet Но я не могу найти очевидный способ конвертировать в mutable.Set. Ответ 1 scala> scala.collection.mutable.Set( Array(1,2) :_* ) res2: scala.collection.mutable.Set[Int] = Set(2, 1) Признак типа weird :_*, заставляет метод factory видеть массив как список аргументов. Ответ 2 scala> val s=scala.collection.mutable.Set()++Array(1,2,3) s: scala.collection.mutable.Set[Int] = Set(2, 1, 3) Ответ 3 Начиная с Scala 2.10, через заводских сборщиков, применяемых с .to(factory): Array(1, 2, 3).to[collection.mutable.Set] // collection.mutable.Set[Int] = Set(1, 2, 3) И начиная Scala 2.13: Array(1, 2, 3).to(collection.mutable.Set) // collection.mutable.Set[Int] = HashSet(1, 2, 3)
Ответ 1 scala> scala.collection.mutable.Set( Array(1,2) :_* ) res2: scala.collection.mutable.Set[Int] = Set(2, 1) Признак типа weird :_*, заставляет метод factory видеть массив как список аргументов.
Ответ 2 scala> val s=scala.collection.mutable.Set()++Array(1,2,3) s: scala.collection.mutable.Set[Int] = Set(2, 1, 3)
Ответ 3 Начиная с Scala 2.10, через заводских сборщиков, применяемых с .to(factory): Array(1, 2, 3).to[collection.mutable.Set] // collection.mutable.Set[Int] = Set(1, 2, 3) И начиная Scala 2.13: Array(1, 2, 3).to(collection.mutable.Set) // collection.mutable.Set[Int] = HashSet(1, 2, 3)