溫馨提示×

Ruby哈希操作怎樣排序哈希

小樊
81
2024-11-06 03:03:34
欄目: 編程語言

在 Ruby 中,你可以使用 sort_by 方法對哈希的鍵或值進(jìn)行排序。以下是如何根據(jù)鍵和值對哈希進(jìn)行排序的示例:

# 創(chuàng)建一個(gè)哈希
hash = {
  "apple" => 3,
  "banana" => 1,
  "orange" => 2
}

# 根據(jù)鍵對哈希進(jìn)行排序
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]]

# 根據(jù)值對哈希進(jìn)行排序
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]]

在這個(gè)示例中,我們首先創(chuàng)建了一個(gè)包含水果名稱及其對應(yīng)數(shù)量的字典。然后,我們使用 sort_by 方法對字典的鍵和值進(jìn)行排序。sort_by 方法接受一個(gè)塊,該塊定義了排序的依據(jù)。在這種情況下,我們根據(jù)鍵對哈希進(jìn)行排序,然后根據(jù)值對哈希進(jìn)行排序。最后,我們打印出排序后的哈希。

0