[英]Learning about hashes in Ruby
我現在正試圖弄清楚如何只打印散列中的鍵。 我對此還是個新手,我缺少有關如何打印密鑰的信息。 到目前為止我的代碼:
shopping_list = {
'milk' => false,
'eggs' => false,
'jalapenos' => true
}
puts "Here is your shopping list!"
shopping_list.each do |key|
puts "- #{key}"
end
我的輸出:
Here is your shopping list!
- ["milk", false]
- ["eggs", false]
- ["jalapenos", true]
我只想重視打印出來,如:
Here is your shopping list!
- milk
- eggs
最后,我想省略真正的購物項目,在這種情況下,它已經被購買了。 我想先打印出我還需要購買的東西。
你可以通過組合#reject
、 #keys
和#each
方法來獲得你想要的值,如下所示:
shopping_list.reject { |key, value| value }.keys.each do |key|
puts "- #{key}"
end
正如 Cary Swoveland 所提到的,上面的代碼是創建了臨時數組。 如果你不想創建這些,你可以使用下面的代碼:
shopping_list.each do |key, value|
puts "- #{key}" if value == false
end
弄清楚了。
shopping_list = {
'milk' => false,
'eggs' => false,
'jalapenos' => true
}
puts "Here is your shopping list!"
for key in shopping_list.keys()
puts "- #{key}"
end
我的輸出。
Here is your shopping list!
- milk
- eggs
- jalapenos
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.