使用Ruby符号获取数据列表

时间:2014-01-19 10:40:55

标签: ruby symbols hash

我试图从ruby数据文件中获取数据列表。我有这样的代码:

us_cities = {:city => 'Lewisville', 'Florida', 'Angeles'}

我正在做自学,我试图减少记忆。但是当我按下回车按钮时,我收到一条错误消息。我想这样做:us_cities[:city] 我得到了城市名单。我是以正确的方式去做的吗?

如果您可以使用文档参考回答,那么我可以阅读将是可爱的。谢谢!

1 个答案:

答案 0 :(得分:3)

Hash对象包含key-vaue对的列表,其中每个键值对用逗号(,)分隔。你的那个是错误的,而不是如下:

us_cities = {:city => ['Lewisville', 'Florida', 'Angeles']}
us_cities[:city] # => ['Lewisville', 'Florida', 'Angeles']
  

Hash是一个类似字典的唯一键及其值的集合。也称为关联数组,它们类似于数组,但是当数组使用整数作为索引时,哈希允许您使用任何对象类型。哈希按照插入相应键的顺序枚举它们的值。

我创建了一个us_cities哈希,它有一个密钥:city,该密钥的值是一个Array对象,它包含所有城市名称列表。现在要获取该密钥:city的值,我们需要使用Hash#[](正如我们在此处所做的那样us_cities[:city])。