gpt4 book ai didi

Scala:为什么没有 sortBy?

转载 作者:行者123 更新时间:2023-12-01 12:23:50 25 4
gpt4 key购买 nike

我想知道为什么 Scala Set 没有 sortBy 方法,而 SeqList 因为它也扩展了 Iterable...

最佳答案

Set 是一种有点有序(这就是它可迭代的原因)但未排序的元素集合。如果要对元素进行排序,则必须使用 SortedSet实现(TreeSet),您可以在其中提供创建新实例时的顺序

更新:有序和有序之间的区别不是很清楚:你可以说 List 是有序的但可能没有排序,而 Map 是无序和未排序的,但是 Map 的实现需要将其元素保存在内存中( RAM,磁盘,任何你想要的支持)并且内存总是有序的,所以它为任何集合提供了一些顺序(例如插入顺序或存储顺序)。

可以在 Scala API 中看到这种未定义的示例:定义 SortedSet 时,构造函数是:

new TreeSet()(implicit ordering: Ordering[A])

所以用了“ordering”这个词而不是“sorting”

关于Scala:为什么没有 sortBy?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41762012/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com