欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Ruby的数组和哈希对比 数组哈希 

程序员文章站 2024-03-18 09:24:04
...

    相同点:

        都是带索引的集合。

        都是用来存储对象集合的。

        都可以通过键来访问。

        都可以动态增加内存空间来存储新元素。

        都能保存任何类型的对象。

 

    不同点:

        数组的键是整数,哈希可以是任何对象。

        数组访问效率更高,哈希访问更灵活。

        数组用方括号[]来创建和初始化,哈希用花括号{}来创建和初始化。

 

    各自特点:

        数组array:

            a = ['ant', 'bee', 'cat', 'dog']除了可以这么创建以外,还可以a = %w{ant bee cat dog}方式创建。

            数组通过<<方法可以追加对象,a << 'elk'。

        哈希hash:

            哈希是由键值对组成的,=> 符号左边是键,符号右边是值,键必须唯一,一般用符号作为键,值可以是任意对象。例如 inst_section = {:cello=>'string', :clarinet=>'woodwind', :drum=>'percussion'}。

            哈希可以像数组一样用方括号标记法,例如 inst_section[:cello]    #=> 'string'

相关标签: 数组 哈希