Разница Scala между (от 1 до 4) .toSet и (от 1 до 4) .to [scala.collection.immutable.Set]? - PullRequest
0 голосов
/ 04 июля 2019

Разница в Scala между (1 to 4).to[scala.collection.immutable.Set] и (1 to 4).toSet?

scala> (1 to 4).toSet
res37: scala.collection.immutable.Set[Int] = Set(1, 2, 3, 4)

scala> (1 to 4).to[scala.collection.immutable.Set]
res38: scala.collection.immutable.Set[Int] = Set(1, 2, 3, 4)

scala> (1 to 4).to[Set]
res39: Set[Int] = Set(1, 2, 3, 4)

scala> Set(1 to 4:_*)
res14: scala.collection.immutable.Set[Int] = Set(1, 2, 3, 4)

Ответы [ 2 ]

3 голосов
/ 04 июля 2019

Если вы посмотрите на реализацию toSet:

def toSet[B >: A]: immutable.Set[B] = to[immutable.Set].asInstanceOf[immutable.Set[B]]

, вы увидите, что это просто псевдоним to[].То же самое.
Обратите внимание, что начиная с версии Scala 2.13 и выше, to(Set).См. документ и примечание к выпуску

1 голос
/ 04 июля 2019

Они все должны быть одинаковыми, Set это просто псевдоним, как это

type Set[A] = immutable.Set[A]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...