如何惯用地检查 Hash 是否不为零,从而在 Ruby on Rails 中的一行中获取键的值?

sofs1

首先,我想检查是否为零。如果不是nil,则获取key的值

最大取胜者

典型的方法是val = hash && hash[key]or val = hash[key] if hash

您还可以使用安全导航运算符,例如val = hash&.dig(key)(请参阅Hash#dig)或val = hash&.[](key).. 我真的不推荐最后一个,因为它不太易读

val如果哈希值为 nil,所有这些示例都将设置为 nil。如果键必须存在并且您想在不存在的情况下引发错误,则可以使用val = hash&.fetch(key)(请参阅Hash#fetch

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何惯用地检查 Elixir 中的变量是否“为假”或“不为真”?

检查变量是否不是nil并且在ruby中不为零

在Rails快捷方式中检查是否非零且不为空?

Ruby:分配并检查一行是否为零

如何从 Ruby on Rails 中的一组复选框中获取一组值?

如何从ruby中的一行获取多个输入

Ruby Hash:如何过滤值(数组)并返回?

如何在 Ruby Hash Table 中搜索值?

如何在Ruby on Rails中检查属性是否存在状态验证

Ruby:在JavaScript中检查是否为零

如何在Swift 2中检查NSDictionary是否不为零

ruby on rails params hash及其内容

是否有一个ruby或rails方法在检查哈希键时会返回哈希键?

在Ruby on Rails中创建哈希的零错误

如何在Pandas DataFrame中获得最小值不为零的第一行索引?

Ruby检查记录是否存在以及关联在一行中

检查python中的值是否为零或不为null

如何使用Ruby和/或Rails检查数组索引是否存在

如何检查日期是否有效(Ruby on Rails)

在ruby上的ruby中的object.to_yaml(YAML)时,是否可以删除“!ruby / hash:ActionController :: Parameters”?

在Ruby on Rails中将3个数组合并到Hash中

如何检查数组中的每个单词是否包含子字符串并拒绝Ruby on Rails中的子字符串?

Ruby Hash中的字典类

如何在Ruby on Rails中通过键访问对象的(ActiveRecord :: Relation)值?

如何在 ruby 中創建 Hash:ActiveSupport

如何在Rails中的ruby中实现哈希值

如何在 Ruby on Rails 中显示此数组中的值

如何在Ruby on Rails中的params数组中更改值?

Ruby on Rails - Ruby,如何从具有相同键的两个散列中添加值,而不覆盖这些值?