ruby

Ruby哈希操作怎样排序哈希

小樊
81
2024-11-06 03:03:34
栏目: 编程语言

在 Ruby 中,你可以使用 sort_by 方法对哈希的键或值进行排序。以下是如何根据键和值对哈希进行排序的示例:

# 创建一个哈希
hash = {
  "apple" => 3,
  "banana" => 1,
  "orange" => 2
}

# 根据键对哈希进行排序
sorted_by_key = hash.sort_by { |key, _value| key }
puts "Sorted by key: #{sorted_by_key.inspect}"
# 输出:Sorted by key: [["apple", 3], ["banana", 1], ["orange", 2]]

# 根据值对哈希进行排序
sorted_by_value = hash.sort_by { |_key, value| value }
puts "Sorted by value: #{sorted_by_value.inspect}"
# 输出:Sorted by value: [["banana", 1], ["orange", 2], ["apple", 3]]

在这个示例中,我们首先创建了一个包含水果名称及其对应数量的字典。然后,我们使用 sort_by 方法对字典的键和值进行排序。sort_by 方法接受一个块,该块定义了排序的依据。在这种情况下,我们根据键对哈希进行排序,然后根据值对哈希进行排序。最后,我们打印出排序后的哈希。

0
看了该问题的人还看了