是否有更好的方法来更新哈希中哈希值?
例如:
result_hash = {
id: queue[:id],
status:
{
added: 0,
updated: 0,
rejected: 0
}
}
我使用了以下两行中的一行:
result_hash[:status][:updated] += 1
result_hash[:status][:added] += 1
但请阅读hash.update
。当我尝试它时,只更新了第一个值“:added”。
是否有其他选择或有人可以解释如何在我的案例中使用hash.update
?
答案 0 :(得分:2)
这是一种可以使用update
来完成相同任务的方法:
result_hash[:status].update({
added: result_hash[:status][:added] + 1,
updated: result_hash[:status][:updated] + 1,
})
但是,我认为update
在这种情况下无益,我发现现有代码更清晰,更易读。