哈希> = Ruby中的运算符

在上一篇文章中,我们看到了如何在>运算符的帮助下比较两个哈希对象?“>”方法是在Ruby的库中定义的公共实例方法。

在本文中,我们将看到“> =”运算符的实现。借助其名称,工作非常清晰。它并不像看起来那么简单。我们将在本文的内容中找到答案。我们将借助语法和演示程序代码来理解它。

方法说明:

此方法是在Ruby的库中定义的公共实例方法,特别是针对Hash类。该方法的工作方式是在两个不同的哈希值之间进行比较并返回一个布尔值。当第二个哈希是第一个哈希的子集时,该方法返回true;如果它不是第一个哈希实例的子集,则返回false。即使第二个哈希对象等于第一个哈希对象,它也会返回true。成为子集仅意味着拥有所有存在于另一个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"}

hash2= {"color"=> "Black", "object"=>"phone", "love"=>"mom","fruit"=>"Kiwi","vege"=>"potato"}

if(hash1>=hash2)
	puts "hash2 is a subset of or equal to hash1"
else
	puts "hash2 is not a subset of or equal to hash1"
end

输出结果

hash2 is a subset of or equal to hash1

说明:

在上面的代码中,您可以简单地观察到,如果条件是因为消息被打印为“ hash2是hash1或等于hash1的子集”,则该方法在true内返回了true 。发生这种情况是因为hash1等于hash2。即使hash2是hash1的子集,该方法也必须返回true。这是子集的简单含义。

范例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","o"=>"nil"}

if(hash1>=hash2)
	puts "hash2 is a subset of or equal to hash1"
else
	puts "hash2 is not a subset of or equal to hash1"
end

输出结果

hash2 is not a subset of or equal to hash1

说明:

在上面的代码中,您可以简单地观察到,如果条件是因为消息被打印为“ hash2不是hash1或不等于hash1”的子集,则该方法在false内部已经返回。发生这种情况是因为hash2并没有hash1中存在的所有元素,或者它不等于hash1。这是子集的简单含义。