2.6Ruby类型之哈希(Hash)

哈希的键必须是不可变类型,且不必都是同一个类型,最常用的是符号类型。

哈希的键可以重复,后定义的键值对会覆盖先定义的键值对,会报错。

哈希的值可以是任何 Ruby 数据类型,且不必都是同一个类型。

哈希的值可以重复。

哈希的键值对是无序的,但迭代时是有序的。

哈希的键值对的个数(长度)可以动态改变,可以添加、更改、删除键值对。

1.哈希声明

#字面量创建方式

#创建一个空哈希
h = {}

#创建一个哈希
h = {键1 => 值1, 键2 => 值2, 键N => 值N}
#示例
h = {:a => 1, :b => 2, :c => 3}
#当键是符号类型时,支持此简写。
h = {a: 1, b: 2, c: 3}
#[]创建方式

#创建一个空哈希
h = Hash[]

#创建一个哈希
h = Hash[{键1 => 值1, 键2 => 值2, 键N => 值N}]
#new()方法创建方式

#创建一个空哈希
h = Hash.new()

#创建一个哈希
h = Hash.new()
h[键] = 值

2.访问哈希

#查看
v = h[键]

#添加或更改
h[键] = 值

#删除
h.delete(键)

3.哈希长度

注意:length 是只读属性。

v = h.length

原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/ruby/rubylang/37409.html

(0)
huoxiaoqiang的头像huoxiaoqiang
上一篇 2025年5月5日 19:46
下一篇 2025年5月6日 19:54

相关推荐

  • 2.2Ruby类型之类(Class)

    1.类声明 类声明是 Class 类的对象。 2.成员定义 注意:Ruby 语言不支持类访问器属性。 3.继承 3.1方法继承 一个子类只可以直接继承自一个父类,不可以直接继承自多个父类。 子类会直接继承父类中可继承的方法,间接继承祖父类中可继承的方法,以此类推,直至没有可继承的方法。 注意:从父类中继承过来的方法无需…

    Ruby语言教程 2025年5月2日
    0220
  • 2.3Ruby类型之字符串(String)

    1.单引号字符串字面量 单引号字符串字面量只支持 \\、\’ 转义序列。 单引号字符串字面量不支持字符串插值。 单引号字符串字面量支持隐式的换行符。 2.双引号字符串字面量 双引号字符串字面量支持所有转义序列。 双引号字符串字面量支持字符串插值。 双引号字符串字面量支持隐式的换行符。 3.访问字符串 4.字符串长度 注…

    Ruby语言教程 2025年5月3日
    0210
  • 1.3Ruby语言的运算符(Operator)

    1.一元运算符 运算符 名称 描述 +a 求正 a 的值本身。 -a 求负 a 的负值。 2.算术运算符 运算符 名称 a + b 加法,字符串连接。 a – b 减法 a * b 乘法 a / b 除法 a % b 求余 a ** b 求幂 3.赋值运算符 运算符 名称 a = b 赋值 a +=…

    Ruby语言教程 2025年3月3日
    0170

发表回复

登录后才能评论