Hash.assoc()方法以及Ruby中的示例

Hash.assoc()方法

在本文中,我们将研究Hash.assoc()方法。无法假定该方法的工作原理,因为它的名称完全不同。让我们阅读其定义并在语法和程序代码的帮助下了解其实现。

方法说明:

该方法是Public实例方法,属于Hash类,它位于Ruby语言库中。此方法用于检查对象(键值)是否为特定哈希实例的一部分,以及哈希实例是否可以为普通哈希实例。如果不正常,则意味着Hash实例是多个Array实例及其键的哈希,或者可以说它是多个键和值的集合,而这些键和值本身就是Array类的对象。让我们来看一下语法,并演示该方法的程序代码。

如果您正在考虑它将返回什么,那么让我告诉您,它将返回第一个包含的Hash实例,在该实例中发现键值对的存在。如果在任何哈希中都找不到该对象,它将返回“ nil”

语法:

    Hash_instance.assoc(obj)

Argument(s) 需要:

此方法仅使用一个参数,而该参数不过是一个要检查其存在性的对象。

范例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实例的一部分,它将返回键值对。