1

有没有办法在 Ruby 中轻松生成这个数组?

[[-5,'-5'],[-4,'-4'],[-3,'-3'],[-2,'-2'],[-1,'-1'],[1,'1'],[2,'2'],[3,'3'],[4,'4'],[5,'5']]

基本上,它包含从 -5 到 5 的 10 个元素,带有一个整数键和字符串值。

4

2 回答 2

8
(-5..5).map{ |i| [i, i.to_s] }

doster 指出规范不包括0,其中任何一个都可以:

(-5..5).reject{ |i| i == 0 }.map{ |i| [i, i.to_s] }
(-5..5).reject(&:zero?).map{ |i| [i, i.to_s] }
(-5..5).map{ |i| [i, i.to_s] unless i == 0 }.compact
(-5..5).ma­p{ |i| [i, i.to_­s] unles­s i.zer­o? }.com­pact
于 2012-11-09T01:32:17.170 回答
1

((-5..-1).to_a + (1..5).to_a).map { |i| [i, i.to_s] }

于 2012-11-09T01:43:07.370 回答