Hash.assoc() 方法
在本文中,我们将研究 Hash.assoc() 方法。无法假设该方法的用法原理,因为它的名称完全不同。让我们在语法和程序代码的帮助下阅读它的定义并理解它的实现。
方法说明:
该方法是一个公共实例方法,属于 Ruby 语言库中的 Hash 类。此方法用于检查对象(键值)是否是特定 Hash 实例的一部分,并且该 Hash 实例可以或不能是正常的 Hash 实例。如果不正常,则说明Hash实例是多个Array实例及其键的Hash,也可以说是多个键值的集合,本身就是Array类的对象。让我们通过语法并演示此方法的程序代码。
如果您正在考虑它将返回什么,那么让我告诉您,它将返回第一个包含的 Hash 实例,它发现键值对的存在。如果它没有在任何哈希中找到对象,它将返回 "nil"。
用法:
Hash_instance.assoc(obj)
所需参数:
这个方法只接受一个参数,而这个参数只不过是一个我们想要检查其存在的对象。
范例1:
=begin
Ruby program to demonstrate Hash.assoc method
=end
hsh = {"colors" => ["red", "blue", "green"],
"letters" => ["a", "b", "c" ], "Fruit" => ["Banana","Kiwi","Grapes"]}
puts "Hash.assoc implementation:"
puts "Enter the Key you want to search:"
ky = gets.chomp
if (hsh.assoc(ky))
puts "Key found successfully"
puts "Values are:#{hsh.assoc(ky)}"
else
puts "Key not found!"
end
输出
RUN 1: Hash.assoc implementation: Enter the Key you want to search: colors Key found successfully Values are:["colors", ["red", "blue", "green"]] RUN 2: Hash.assoc implementation: Enter the Key you want to search: veges Key not found!
说明:
在上面的代码中,可以发现我们调用了assoc()方法的Hash实例并不是普通的Hash实例。它是多个 Array 实例及其特定键的集合。它使用找到用户输入的键的键返回整个 Array 实例。
范例2:
=begin
Ruby program to demonstrate Hash.assoc method
=end
hsh = {"color"=> "green","vege"=> "papaya"}
puts "Hash assoc implementation:"
puts hsh.assoc("color")
输出
Hash assoc implementation: color green
说明:
在上面你可以验证 assoc() 方法也适用于普通的 Hash 实例。如果键是 Hash 实例的一部分,它将返回键值对。
相关用法
- Ruby Hash.rassoc(obj)用法及代码示例
- Ruby Hash.keep_if用法及代码示例
- Ruby Hash.fetch_values()用法及代码示例
- Ruby Hash.delete_if用法及代码示例
- Ruby Hash.fetch()用法及代码示例
- Ruby Hash.each用法及代码示例
- Ruby Hash.keys用法及代码示例
- Ruby Hash.transform_keys用法及代码示例
- Ruby Hash.each_key用法及代码示例
- Ruby Hash.insert()用法及代码示例
- Ruby Hash.values_at()用法及代码示例
- Ruby Hash.rehash用法及代码示例
- Ruby Hash.each_value用法及代码示例
- Ruby Hash.values用法及代码示例
- Ruby Hash.replace()用法及代码示例
- Ruby Hash.compact用法及代码示例
- Ruby Hash.reject用法及代码示例
- Ruby Hash.select用法及代码示例
- Ruby Hash.flatten用法及代码示例
- Ruby Hash.invert用法及代码示例
注:本文由纯净天空筛选整理自 Hash.assoc() Method with Example in Ruby。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。