Array#shuffleで同じ結果を得る

shuffleの引数に同じRandomオブジェクトを渡せば何度シャッフルしても同じ結果になる

$ pry
[1] pry(main)> Array(1...10).shuffle(random: Random.new(473))
=> [6, 4, 9, 5, 8, 3, 2, 1, 7]
[2] pry(main)> Array(1...10).shuffle(random: Random.new(473))
=> [6, 4, 9, 5, 8, 3, 2, 1, 7]
[3] pry(main)> Array(1...10).shuffle(random: Random.new(473))
=> [6, 4, 9, 5, 8, 3, 2, 1, 7]

class Array (Ruby 2.2.0)