📜  Ruby-哈希(1)

📅  最后修改于: 2023-12-03 15:19:52.603000             🧑  作者: Mango

Ruby-哈希

哈希(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
哈希的常用方法
each 和 each_key
hash = { "name" => "Ruby", "version" => 3.0 }
hash.each { |key, value|
    puts "#{key}: #{value}"
}

hash.each_key { |key| 
    puts key 
}
merge

合并两个哈希。

h1 = { "a" => 100, "b" => 200 }
h2 = { "c" => 300, "d" => 400 }
h1.merge(h2)   # => {"a"=>100, "b"=>200, "c"=>300, "d"=>400}
delete 和 clear

删除指定键的键值对。

hash = { "name" => "Ruby", "version" => 3.0 }
hash.delete("version")  # 删除版本号

清空整个哈希。

hash = { "name" => "Ruby", "version" => 3.0 }
hash.clear
总结

哈希是 Ruby 中非常常用的数据类型,可以用来存储任意对象的键值对,提供了丰富的方法,可以方便地操作哈希中的数据。如果您正在学习 Ruby,务必要掌握哈希的使用!