0

假设我有一个像这样的多维数组:

CURRENCIES = [
  [ "EUR", "€" ],
  [ "USD", "$" ],
  [ "GBP", "£" ]
]

Ruby 中通过提供货币代码来检索货币符号的最有效方法是什么?

4

2 回答 2

5

将其转换为哈希:

currencies_hash = Hash[CURRENCIES]

然后得到你需要的东西:

currencies_hash["EUR"] #=>"€"

我不知道它是否最有效(对于内存使用或 CPU 时间或?..)但 Ruby 风格足够优雅 =)

如果您可以将 CURRENCIES 定义为哈希,那么您不需要数组

于 2013-09-14T14:02:17.420 回答
0

不确定是否需要以编程方式将这些嵌套数组转换为散列,但如果需要,请按照以下步骤操作。

def hash(a)
   h = {}
   a.each { |x| h[x[0]] = x[1] }
   h
end

CURRENCIES = hash(your_array)
于 2013-09-14T19:35:22.220 回答