我想向散列添加值和洗掉值,如下所示
h= {:a =>[ 1,3, 4],
:b =>[ 3, 6],
:c =>[ 4, 8, 87]
}
以及如何只洗掉一個與鍵有關的值?洗掉 c, 87
h= {:a =>[ 1,3, 4],
:b =>[ 3, 6],
:c =>[ 4, 8]
}
我可以在 ruby?? 中做到這一點嗎?我是 ruby?? 新手,有人可以幫我嗎?
uj5u.com熱心網友回復:
使用 Nil Guard
您需要防止散列中缺少鍵和值。有很多方法可以做到這一點,但在任何最近的 Ruby 上,&.運算子確保方法在呼叫 nil 時不會引發例外。以下作業正常:
h = {
a: [1, 3, 4],
b: [3, 6],
c: [4, 8, 87]
}
h[:c]&.delete 87; h
#=> {:a=>[1, 3, 4], :b=>[3, 6], :c=>[4, 8]}
h[:x]&.delete 101; h
#=> {:a=>[1, 3, 4], :b=>[3, 6], :c=>[4, 8]}
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/373359.html
