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'
推荐阅读
-
Ruby的数组和哈希对比 数组哈希
-
字符串哈希 - HDU-1280 整数哈希求两个数组合和的前m大个数
-
哈希表简单算法题:在数组中找到两个数,它们之和等于给定的数字。
-
介绍几个php4中非常有用的数组函数转载关联数组等同于PERL里的哈希数组。以前我一直以为PHP里没...
-
go语言数组和切片的深度对比
-
php的扩展与嵌入--php扩展中的数组和哈希表1
-
[C++ Primer Plus]学习笔记--关于C++ string和c类型字符数组的对比
-
【Java语言】剑指office系列之数组、哈希表---数组中只出现一次的数字
-
Perl与JS的对比分析(数组、哈希)
-
Ruby中的数组和散列表的使用详解