gpt4 book ai didi

scala - map 成员的排序是否可靠?

转载 作者:行者123 更新时间:2023-12-01 22:58:14 28 4
gpt4 key购买 nike

当我通过对 Map() 的标准调用或通过连接以这种方式创建的现有 map 来创建不可变 map 时,在我的所有测试中,我得到遍历其成员的顺序提供它们添加。这正是我需要对它们进行排序的方式,但文档中没有一个关于 map 成员排序可靠性的词。

所以我想知道期望标准 Map 按添加顺序返回其项目是否安全,或者我应该寻找一些其他实现以及在那种情况下使用哪些实现。

最佳答案

我认为这不安全,从 5 个元素开始不保留顺序(Scala 2.9.1):

scala> Map(1 -> 1, 2 -> 2, 3 -> 3, 4 -> 4, 5 -> 5)
res9: scala.collection.immutable.Map[Int,Int] =
Map(5 -> 5, 1 -> 1, 2 -> 2, 3 -> 3, 4 -> 4)

对于更大的 map ,顺序是完全“随机”的,试试 Map((1 to 100) zip (1 to 100): _*)

尝试 LinkedHashMap对于有序条目和 TreeMap实现排序条目。

关于scala - map 成员的排序是否可靠?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10680684/

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