当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Ruby Hash.invert用法及代码示例


Hash.invert 方法

在本文中,我们将研究 Hash.invert 方法。这种方法的用法原理可以通过它的名字来预测,但它并不像看起来那么简单。那么,我们将在其余内容中借助其语法和程序代码来理解该方法。

方法说明:

该方法是Ruby 库中专门为Hash 类定义的公共实例方法。此方法的用法方式是创建一个新的散列对象,其中自散列的键是值,自散列的值是键。如果哈希对象中已经存在具有相同值的键,则将使用最后一个键,并丢弃前一个键。此方法是非破坏性方法的示例之一,其中该方法创建的更改是暂时的。

用法:

    Hash_object.invert

所需参数:

此方法不需要任何参数。

范例1:

=begin
  Ruby program to demonstrate invert method
=end	

hash1={"color"=>"Black","object"=>"car","love"=>"friends","fruit"=>"Kiwi","vege"=>"potato"}

puts "Hash.invert implementation"
ary = hash1.invert

puts "Hash object after inverting:#{ary}"

puts "Self hash object:#{hash1}"

输出

Hash.invert implementation
Hash object after inverting:{"Black"=>"color", "car"=>"object", "friends"=>"love", "Kiwi"=>"fruit", "potato"=>"vege"}
Self hash object:{"color"=>"Black", "object"=>"car", "love"=>"friends", "fruit"=>"Kiwi", "vege"=>"potato"}

说明:

在上面的代码中,您可以观察到我们在 Hash.invert 方法的帮助下反转哈希对象。在新的散列中,键是值,值是键。您可以看到此方法不会对实际散列产生任何影响,因为此方法是非破坏性方法的示例之一。

范例2:

=begin
  Ruby program to demonstrate invert method
=end	

hash1={"color"=>"Black","object"=>"car","love"=>"friends","fruit"=>"Kiwi","vege"=>"potato"}

puts "Hash.invert implementation"
ary = hash1.invert.invert

puts "Hash object after inverting:#{ary}"

puts "Self hash object:#{hash1}"

输出

Hash.invert implementation
Hash object after inverting:{"color"=>"Black", "object"=>"car", "love"=>"friends", "fruit"=>"Kiwi", "vege"=>"potato"}
Self hash object:{"color"=>"Black", "object"=>"car", "love"=>"friends", "fruit"=>"Kiwi", "vege"=>"potato"}

说明:

在上面的代码中,您可以观察到我们可以在 Hash.invert 方法的帮助下反转哈希对象。您甚至可以看到我们可以进行方法的级联,并且在调用 invert 两次后我们得到了相同的哈希值。



相关用法


注:本文由纯净天空筛选整理自 Hash.invert Method with Example in Ruby。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。