我的代码中有一个Set
,我需要将其转移到ListSet
。感觉很容易做,但是我感觉自己很笨,
一些说明问题的代码:
import scala.collection.immutable.ListSet
val someData = Set(1,2,3)
//Need to transfer to ListSet
val listSetOfData: ListSet[Int] = someData.toListSet //?
请协助
答案 0 :(得分:5)
在Scala 2.12(可能是将来的Scala版本)中,您可以使用to
方法转换为几乎任何集合类型:
scala> someData.to[ListSet]
res0: scala.collection.immutable.ListSet[Int] = ListSet(1, 2, 3)
在2.11和更早的版本中,您会看到人们使用多种不同的方式来做这种事情:
scala> ListSet(someData.toSeq: _*)
res1: scala.collection.immutable.ListSet[Int] = ListSet(1, 2, 3)
scala> ListSet.empty[Int] ++ someData
res2: scala.collection.immutable.ListSet[Int] = ListSet(1, 2, 3)
我个人认为我更喜欢++
版本,但这很大程度上取决于口味。