Ruby中的哈希创建
什么是哈希?
在继续之前,非常有必要了解Hash对象的实际含义。哈希是唯一键及其值的集合,这些键与字典非常相似。它们也称为关联数组。他们使用对象而不是数字作为索引。
有一些创建哈希的方法。本文其余部分给出了大多数方法。
方法1:
可以按以下方式以隐式方式创建哈希。
。
语法:
Hash_object = {"Key"=> value, "Key"=> value}
示例
=beginRuby program to demonstrate Hash creation
=end
hsh = {"colors" => "red",
"letters" => "a", "Fruit" => "Grapes"}
puts "Hash contents are : #{hsh}"
输出结果
Hash contents are : {"colors"=>"red", "letters"=>"a", "Fruit"=>"Grapes"}
方法2:
您也可以通过以下方式创建Hash类的实例。
语法:
Hash_object = {:Key=> value, :Key:=> value}
示例
=beginRuby program to demonstrate Hash creation
=end
hsh = {:colors => "red",
:letters => "a", :Fruit => "Grapes", :Love=> "Self", :vege=>"Potato"}
puts "Hash contents are : #{hsh}"
输出结果
Hash contents are : {:colors=>"red", :letters=>"a", :Fruit=>"Grapes", :Love=>"Self", :vege=>"Potato"}
方法3:
您可以通过以下方式在new关键字的帮助下创建Hash对象。
语法:
Hash_object = Hash.new
示例
=beginRuby program to demonstrate Hash creation
=end
hsh = Hash.new
hsh["color"] = "Black"
hsh["age"] = 20
hsh["car"] = "Wrv"
hsh["home"] = "mom"
hsh["college"]= "geu"
puts "Hash contents are : #{hsh}"
输出结果
Hash contents are : {"color"=>"Black", "age"=>20, "car"=>"Wrv", "home"=>"mom", "college"=>"geu"}
方法4:
您可以通过在创建哈希时在Hash类的新方法中传递默认值来创建哈希对象。这将帮助您以某种方式在用户要求的Hash对象中不存在键时将默认值打印为输出。如果未设置默认值,则该方法将返回'nil'。可以通过将值作为新方法内部的参数传递来设置默认值。您也可以使用方法“ default”进行设置。两者的语法在下面给出。
语法:
Hash_object = Hash.new(default_value)or
Hash_object = {"Key"=> value, "Key"=> value}
Hash_object.default = "default_value"
范例1:
=beginRuby program to demonstrate Hash creation
=end
hsh = Hash.new(0)
hsh["color"] = "Black"
hsh["age"] = 20
hsh["car"] = "Wrv"
hsh["home"] = "mom"
hsh["college"]= "geu"
puts "Hash contents are : #{hsh}"
puts hsh["game"]
输出结果
Hash contents are : {"color"=>"Black", "age"=>20, "car"=>"Wrv", "home"=>"mom", "college"=>"geu"}0
说明:
您可以看到当要求“游戏”键的值时返回了值0,因为该值在哈希中不存在。
范例2:
=beginRuby program to demonstrate Hash creation
=end
hsh = Hash.new(0)
hsh["color"] = "Black"
hsh["age"] = 20
hsh.default = "Not found"
puts "Hash contents are : #{hsh}"
puts hsh["game"]
输出结果
Hash contents are : {"color"=>"Black", "age"=>20}Not found
说明:
您可以观察到,可以使用默认方法的帮助来传递默认值,该方法也已经存在于Hash类中。
以上是 Ruby中的哈希创建 的全部内容, 来源链接: utcz.com/z/343232.html