关键的区别?包括?和会员?在Ruby中?

时间:2016-12-04 17:03:05

标签: ruby hash key

对于此示例哈希

hash = {:key=>"value"}

所有这些都是true

hash.key?(:key)
hash.has_key?(:key)  #deprecated in favor of .key?
hash.include?(:key)
hash.member?(:key)

Ruby Docs为所有三个

提供相同的解释
"Returns `true` if the given key is present in ..."

我的问题是:在实际的Ruby使用中,每个都有特定的用例吗?或者,这只是有多种方法来解决同样的问题吗?

非常感谢指向特定文档或参考的链接!

1 个答案:

答案 0 :(得分:6)

如果您打开Ruby doc on Hashes,然后找到您的方法并打开他们可以看到具有相同源代码的源代码。

所以以适当的方式回答一个问题:我敢称它们为别名(相同但不同地称为/命名),但我发现它们对提高我的代码的可读性很有用。