在上一篇文章中,我们看到了如何借助“ ==”运算符在两个哈希对象之间进行比较?“ ==“方法是Ruby库中定义的公共实例方法。
在本文中,我们将看到“>”运算符的实现。借助其名称,工作非常清晰。它并不像看起来那么简单。我们将在本文的内容中找到答案。我们将借助语法和演示程序代码来理解它。
方法说明:
此方法是在Ruby的库中定义的公共实例方法,特别是针对Hash类。该方法的工作方式是在两个不同的哈希值之间进行比较并返回一个布尔值。当第二个哈希是第一个哈希的子集时,该方法返回true;如果它不是第一个哈希实例的子集,则返回false。成为子集仅意味着拥有所有存在于另一个Hash对象中的所有元素。
语法:
Hash > Hash_object -> true or false
Parameter(s)
需要:
此方法不需要任何参数。
范例1:
=begin Ruby program to demonstrate > operator =end hash1={"color"=>"Black","object"=>"phone","love"=>"mom","fruit"=>"Kiwi","vege"=>"potato","place"=>"null"} hash2= {"color"=> "Black", "object"=>"phone", "love"=>"mom","fruit"=>"Kiwi","vege"=>"potato"} if(hash1>hash2) puts "hash2 is a subset of hash1" else puts "hash2 is not a subset of hash1" end
输出结果
hash2 is a subset of hash1
说明:
在上面的代码中,您可以简单地观察到该方法已在if条件内返回true,这是因为消息被打印为“ hash2是hash1的子集”。发生这种情况是因为hash2具有hash1中存在的所有元素。这是子集的简单含义。
范例2:
=begin Ruby program to demonstrate > operator =end hash1= {"color"=> "Black", "object"=>"phone", "love"=>"mom","fruit"=>"Kiwi","vege"=>"potato"} hash2={"color"=>"Black","object"=>"phone","love"=>"mom","fruit"=>"Kiwi","vege"=>"potato","place"=>"null"} if(hash1>hash2) puts "hash2 is a subset of hash1" else puts "hash2 is not a subset of hash1" end
输出结果
hash2 is not a subset of hash1
说明:
在上面的代码中,您可以简单地观察到该方法在if条件内返回了false,这是因为消息被打印为“ hash2不是hash1的子集”。发生这种情况是因为hash2并不具有hash1中存在的所有元素。这是子集的简单含义。