Scala可变集合,插入时排序

Scala可变集合,插入时排序,scala,scala-collections,Scala,Scala Collections,我正在寻找一个Scala可变序列集合,它可以在插入时对元素进行排序。也就是说,在插入完元素后,将对结果集合进行排序。这东西似乎不存在,但也许我遗漏了什么?实施起来可能不会那么困难,但我不想重新发明轮子 编辑:集合语义不合适,因为元素可能会重复 编辑:我在寻找Scala集合,而不是Java集合。这个问题不是关于如何在JVM上实现这种行为,而是关于实现这一点的现有Scala集合。如果不存在这样的问题,我会接受这样的回答。< /P> < P>既然你在寻找可变集合,考虑使用java的TeSeSeT/<

我正在寻找一个Scala可变序列集合,它可以在插入时对元素进行排序。也就是说,在插入完元素后,将对结果集合进行排序。这东西似乎不存在,但也许我遗漏了什么?实施起来可能不会那么困难,但我不想重新发明轮子


编辑:集合语义不合适,因为元素可能会重复


编辑:我在寻找Scala集合,而不是Java集合。这个问题不是关于如何在JVM上实现这种行为,而是关于实现这一点的现有Scala集合。如果不存在这样的问题,我会接受这样的回答。< /P> < P>既然你在寻找可变集合,考虑使用java的TeSeSeT/< P> < P>你可以使用<代码> java。 编辑

有。但只有
dequeue
dequeueAll
方法才能维持秩序

import scala.collection.mutable.PriorityQueue
val pq = new PriorityQueue()(Ordering[Int].reverse) //default is descending order
pq += 5
pq += 4
pq += 2
pq.enqueue    //2
pq.enqueueAll //Vector(4,5)

您可以使用Java的TreeSet。它是可编辑的,所以我认为它符合“顺序”的标准?集合语义不合适,因为元素可以重复。我已经更新了问题。列表映射或其他集合类型,或Int映射(发生次数计数)