📅  最后修改于: 2023-12-03 15:19:52.603000             🧑  作者: Mango
哈希(Hash)是 Ruby 语言中广泛使用的一种重要的数据类型,它类似于字典、映射等概念,可以用来存储一组键值对。键(key)和值(value)都可以是任意类型的对象。哈希是无序的,但是可以根据键从哈希中获取对应的值,这个过程称为“查找”。
创建哈希的方式非常简单,使用“{}”括起来,对于每一个键值对,用“:”分隔。
hash = { "name" => "Ruby", "version" => 3.0 }
在 Ruby 1.9 版本之后,我们还可以使用“{}”括起来,但是键值对的语法略有不同。
hash = { name: "Ruby", version: 3.0 }
注意,在使用“{}”定义哈希时,括号和花括号之间不能有空格。
在 Ruby 中访问哈希非常简单,可以使用中括号指定键来获取对应的值,也可以使用“[]”运算符。
hash = { "name" => "Ruby", "version" => 3.0 }
puts hash["name"] # 输出 "Ruby"
puts hash["version"] # 输出 3.0
hash = { "name" => "Ruby", "version" => 3.0 }
hash.each { |key, value|
puts "#{key}: #{value}"
}
hash.each_key { |key|
puts key
}
合并两个哈希。
h1 = { "a" => 100, "b" => 200 }
h2 = { "c" => 300, "d" => 400 }
h1.merge(h2) # => {"a"=>100, "b"=>200, "c"=>300, "d"=>400}
删除指定键的键值对。
hash = { "name" => "Ruby", "version" => 3.0 }
hash.delete("version") # 删除版本号
清空整个哈希。
hash = { "name" => "Ruby", "version" => 3.0 }
hash.clear
哈希是 Ruby 中非常常用的数据类型,可以用来存储任意对象的键值对,提供了丰富的方法,可以方便地操作哈希中的数据。如果您正在学习 Ruby,务必要掌握哈希的使用!