你如何在scala中原地对
IndexedSeq
进行排序?API函数在哪里?目前没有任何方法可以就地对它们进行排序。
如果你真的需要这样做,可以将 IndexedSeq
转换为 Array[AnyRef]
,然后使用 Java 中的 Arrays.sort
(因为 Scala 的数组不像 Java 的数组协变),需要将其强制转换为 Array[AnyRef]
。
有趣的是,几周前曾经讨论过向 Scala 的可变集合添加 map、filter 和 sort 等操作的原位版本。
我希望在 2.9 版本的并行集合发布之后,这可能是下一个要进一步改进 Scala 集合的工作项目。
如果人们支持这个想法(或提供一个可行的实现),那么这并不会有什么损失 :-).
scala.util.Sorting
进行原地排序,但约束条件仍然相同。 - Daniel C. Sobral