我想创建一个具有由调用方法生成的n值的数组。数组索引在生成值时无关紧要。使用方法生成的值创建数组的最简洁的代码
这是我在:
(1..2).map { Random.rand(10) }
我喜欢做这样的事情2.times { Random.rand(10) }
的想法,但是这并不能返回数组。有没有更简洁的方法?
我想创建一个具有由调用方法生成的n值的数组。数组索引在生成值时无关紧要。使用方法生成的值创建数组的最简洁的代码
这是我在:
(1..2).map { Random.rand(10) }
我喜欢做这样的事情2.times { Random.rand(10) }
的想法,但是这并不能返回数组。有没有更简洁的方法?
Array::new
接受块:
Array.new(2) { rand(10) } #=> [5, 2]
你可以做到这一点,使用的事实,times
无遮挡的回报Enumerator
:
2.times.map { rand(10) }
知道! Dziekuje :) – kubasub 2014-12-03 15:36:39
@KubaSub - 如果你想要“最短”(1..2)'比<2.times'短... – 2014-12-03 15:56:56
对于初学者:不要在标题标签做的好 – rene 2014-12-03 14:49:50