在本文中,我们将研究Hash.key?(obj)方法。由于该方法的名称完全不同,因此无法进行假设。让我们阅读其定义并在语法和程序代码的帮助下了解其实现。
方法说明:
该方法是Public实例方法,属于Hash类,它位于Ruby语言库中。Hash.key?()方法用于检查键(键值)是否为特定Hash实例的一部分,并且该Hash实例应为普通的Hash实例。它将搜索整个哈希,并根据其搜索结果。让我们来看一下语法,并演示该方法的程序代码。
如果您正在考虑它将返回什么,那么让我告诉您,它将返回一个布尔值。如果在哈希表中找到键,则返回值将为true;如果找不到哈希表实例的一部分,则返回值为false。
语法:
Hash_instance.key?(obj)
Argument(s)
需要:
此方法仅使用一个参数,而该参数不过是我们要检查其存在性的键。
范例1:
=begin Ruby program to demonstrate Hash.key? method =end hsh = {"colors" => "red","letters" => "a", "Fruit" => "Grapes"} puts "Hash.key? implementation:" puts "Enter the Key you want to search: " ky = gets.chomp if (hsh.key?(ky)) puts "Key found successfully" else puts "Key not found!" end
输出结果
Hash.key? implementation: Enter the Key you want to search: colors Key found successfully
说明:
在上面的代码中,您可以观察到我们在普通的Hash实例上调用Hash.key?()方法。当它在用户输入的哈希对象中发现键存在时,它返回true。
范例2:
=begin Ruby program to demonstrate Hash.key? method =end hsh = {"colors" => "red","letters" => "a", "Fruit" => "Grapes"} hsh1 = {"cars" => "800","bike" => "pulsar", "phone" => "A50"} hsh2 = {"one"=> hsh, "two" => hsh1} puts "Hash.key? implementation:" puts "Enter the Key you want to search: " ky = gets.chomp if (hsh2.key?(ky)) puts "Key found successfully" else puts "Key not found!" end
输出结果
Hash.key? implementation: Enter the Key you want to search: colors Key not found!
说明:
在上面的代码中,您可以验证Hash.key?()方法不适用于作为多个Hash实例集合的Hash实例。即使对象是Hash实例的一部分,它也会返回false。