如何从红宝石中的哈希值乘以?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何从红宝石中的哈希值乘以?相关的知识,希望对你有一定的参考价值。

我刚刚开始研究红宝石。我有一个简单的问题。我有我的哈希exchange_rate = ["usd" => 1, "eur" => 1.2, "gbp" => 1.3]所以我想做的是,我要制作一个脚本,该脚本将计算写入率。例如,如果我想知道20欧元的美元汇率,脚本会显示给我,your exchange rate is 24USD

这是我的代码

class ExchangeRate
  def initialize (exchange_amount_id)
    @exchange_amount = exchange_amount_id
  end

  exchange_rate = ["usd" => 1, "eur" => 1.2, "gbp" => 1.3]

  def exchange ()
  end 

  classob = ExhangeRate.new(20)
  classob.exchange()
  end
end

但是我仍然想知道如何进行此计算,以显示不同货币的写入率

答案
class ExchangeRate
  def initialize (rate)
    @rate = rate
  end

  def exchange(from, to, value)
    @rate.fetch(from) / @rate.fetch(to) * value
  end
end

rate = { usd: 1, eur: 1.2, gbp: 1.3}
money = ExchangeRate.new(rate)
puts money.exchange(:eur, :usd, 20)
# you will get 24

以上是关于如何从红宝石中的哈希值乘以?的主要内容,如果未能解决你的问题,请参考以下文章

元素替换 - 红宝石

如何递归地用“”替换红宝石哈希中的所有零值?

如何从给定的一组值中进行选择,四舍五入?

带有红宝石集合/可枚举的酷技巧和富有表现力的片段[关闭]

hash 在 perl 中的用法(转载)

如何从 URL 获取片段标识符(哈希 # 后的值)?