ruby-on-rails – Ruby / Rails:将范围转换为哈希

将范围1..10转换为以下格式的哈希的最简单方法是什么?
{
  1 => '£1',2 => '£2',# ...
}

我已尝试使用map执行此操作,但最终得到的是哈希数组而不是单个哈希.

谢谢.

解决方法

Hash[(1..10).map { |num| [num,"£#{num}"] }]

要么

(1..10).inject({}) { |hash,num| hash[num] = "£#{num}"; hash }

或者在Ruby 1.9中

(1..10).each_with_object({}) { |num,hash| hash[num] = "£#{num}" }

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...