【发布时间】:2014-02-08 12:59:31
【问题描述】:
我正在尝试从 ruby 数据文件中获取数据列表。我有这样的代码:
us_cities = {:city => 'Lewisville', 'Florida', 'Angeles'}
我正在自学并试图使用更少的内存。但是当我按下回车按钮时,我收到一条错误消息。当我这样做时,我想要:us_cities[:city]
我得到了城市列表。我走对了吗?
如果你能用文档参考来回答我可以阅读会很可爱。谢谢!
【问题讨论】:
我正在尝试从 ruby 数据文件中获取数据列表。我有这样的代码:
us_cities = {:city => 'Lewisville', 'Florida', 'Angeles'}
我正在自学并试图使用更少的内存。但是当我按下回车按钮时,我收到一条错误消息。当我这样做时,我想要:us_cities[:city]
我得到了城市列表。我走对了吗?
如果你能用文档参考来回答我可以阅读会很可爱。谢谢!
【问题讨论】:
Hash 对象包含键值对列表,其中每个键值对用逗号分隔(,)。您的错误是错误的,请按照以下方式进行:
us_cities = {:city => ['Lewisville', 'Florida', 'Angeles']}
us_cities[:city] # => ['Lewisville', 'Florida', 'Angeles']
Hash是一个类似于字典的唯一键及其值的集合。也称为关联数组,它们与数组类似,但在数组使用整数作为索引的情况下,哈希允许您使用任何对象类型。哈希按照插入相应键的顺序枚举其值。
我创建了一个us_cities 哈希,它有一个键:city,该键的值是一个数组对象,它包含所有城市名称列表。现在要获取该键:city 的值,我们需要使用Hash#[](正是我们在这里所做的us_cities[:city])。
【讨论】: