Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Julia集合和dict的顺序是否保证在会话、平台和版本之间保持稳定?_Julia - Fatal编程技术网

Julia集合和dict的顺序是否保证在会话、平台和版本之间保持稳定?

Julia集合和dict的顺序是否保证在会话、平台和版本之间保持稳定?,julia,Julia,我尝试在MacOSX和Linux上跨多个Julia REPL会话运行以下代码,结果总是完全相同(顺序相同): 问题:这种行为是否由语言保证,跨会话、跨平台、跨版本,以及所有基于哈希的集合? 注: 我知道输出顺序可能会因插入顺序的不同而有所不同,特别是在存在哈希冲突的情况下。我的问题假设插入顺序是恒定的 这个问题与我关于hash()函数本身稳定性的问题有关(它密切相关,但不同) 不,这是内部实现的一部分,与内部事物一样,开发人员不保证订单行为在不同平台和版本中是相同的 同时,如果您想使设置或Di

我尝试在MacOSX和Linux上跨多个Julia REPL会话运行以下代码,结果总是完全相同(顺序相同):

问题:这种行为是否由语言保证,跨会话、跨平台、跨版本,以及所有基于哈希的集合?

注:

  • 我知道输出顺序可能会因插入顺序的不同而有所不同,特别是在存在哈希冲突的情况下。我的问题假设插入顺序是恒定的
  • 这个问题与我关于
    hash()
    函数本身稳定性的问题有关(它密切相关,但不同)

不,这是内部实现的一部分,与内部事物一样,开发人员不保证订单行为在不同平台和版本中是相同的

同时,如果您想使
设置
Dict
结构具有保证顺序,则可以使用或来保持顺序。关于字典,你也可以阅读和主题,因为它们除了保持顺序之外还有其他的优点

julia> (Set([1, 2, 3, 4]), Dict(1=>2, 3=>4, 5=>6))
(Set([4, 2, 3, 1]), Dict(3 => 4,5 => 6,1 => 2))