ruby - Ruby 中的有序哈希有什么用?

标签 ruby hash hashmap hashtable

我最近开始学习 Ruby 和哈希。起初我了解到哈希是无序的,这是有道理的,但现在我发现哈希是在更高版本的 Ruby 中排序的。我真的不明白为什么或这背后的概念。

我能否深入了解有序哈希值的用途?对于常规哈希与有序哈希,可能的用例也很好。

最佳答案

有些人喜欢依赖哈希的排序,因为有序哈希会记住键/值对的插入顺序。这允许程序员使用有点像队列的散列,随机访问与键关联的值。如果他们打算动态更改值,然后遍历队列的键/值对以再次按插入顺序检索它们,这将很有用。

此外,他们不必像使用基于数组的队列那样向队列提供索引,而是可以提供一个符号名称。

代替:

queue[0]

他们可以使用:

queue[:fred]

这是我能看到的关于有序哈希的唯一用例;使用保留插入顺序的键队列复制功能真的很容易。

关于ruby - Ruby 中的有序哈希有什么用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31008844/

相关文章:

Ruby:条件矩阵?有多个条件的情况?

ruby-on-rails - Carrierwave:如何上传大文件?

ruby-on-rails - 如何在 Ruby on Rails 中使用字符串访问实例关系?

linux - 我可以使用什么算法来生成唯一 MAC 地址的 48 位哈希值?

hashmap - 哈希表的空间复杂度是多少?

java - 在类中创建 HashMap ?

c++ - 双重哈希 - 删除和重新哈希函数

java - 类之间的 HashMap 不一致 - Java

ruby-on-rails - Rails datetime_select 在 UTC 中发布我当前的时间

php - 关于加盐密码的问题