【发布时间】:2013-04-04 21:35:36
【问题描述】:
我正在寻找类似 immutable SortedSet 的东西,但我希望元素按照传入构造函数的顺序进行排序。
UniqueList(4,2,3,1,1) // Throws exception
UniqueList(4,2,3,1) // Iterator yields: 4,2,3,1
【问题讨论】:
标签: scala scala-collections scala-2.10
我正在寻找类似 immutable SortedSet 的东西,但我希望元素按照传入构造函数的顺序进行排序。
UniqueList(4,2,3,1,1) // Throws exception
UniqueList(4,2,3,1) // Iterator yields: 4,2,3,1
【问题讨论】:
标签: scala scala-collections scala-2.10
试试collection.mutable.LinkedHashSet - 它具有独特的元素,并且按照添加元素的顺序进行遍历。
【讨论】:
immutable.ListMap,但它有O(n) 查找时间。看到这个答案:stackoverflow.com/questions/9313866/…
immutable.ListSet。在相关问题中,该技术可以以类似的方式应用于集合。
有ListSet,尽管它的值与传入构造函数的顺序相反。
scala> import scala.collection.immutable.ListSet
import scala.collection.immutable.ListSet
scala> ListSet(1,2,3,4)
res7: scala.collection.immutable.ListSet[Int] = ListSet(4, 3, 2, 1)
【讨论】: