在Ruby中,哈希(Hash)是一种键值对(key-value pair)的集合,也称为关联数组或字典。每个键都必须是唯一的,而值则可以重复。以下是一些关于Ruby哈希的基本操作和特性:

创建哈希
# 创建空哈希
empty_hash = {}

# 包含键值对的哈希
person = { "name" => "John", "age" => 30, "gender" => "male" }

# 使用符号作为键的哈希(符号键)
person = { name: "John", age: 30, gender: "male" }

访问和修改哈希元素
# 通过键访问值
puts person["name"]  # 输出 "John"

# 修改值
person["age"] = 31

# 添加新的键值对
person["location"] = "New York"

# 删除键值对
person.delete("gender")

迭代哈希
# 迭代哈希的键值对
person.each do |key, value|
  puts "#{key}: #{value}"
end

# 迭代哈希的键
person.keys.each do |key|
  puts key
end

# 迭代哈希的值
person.values.each do |value|
  puts value
end

其他常见操作
# 判断键是否存在
puts person.key?("name")  # 输出 true

# 获取哈希大小(键值对数量)
puts person.size

# 合并两个哈希
other_info = { "occupation" => "developer", "hobbies" => ["reading", "coding"] }
merged_hash = person.merge(other_info)

默认值
# 使用默认值,当键不存在时返回默认值
grades = Hash.new("N/A")
grades["Alice"] = 90
puts grades["Bob"]  # 输出 "N/A"

这只是Ruby哈希的一小部分功能,还有更多方法和操作可以使用。


转载请注明出处:http://www.pingtaimeng.com/article/detail/13433/Ruby