19

配列があり、最初の配列の特定の要素のインデックスを持つ配列があります。最初の配列から要素を取得するための最良の方法は何ですか?

私がやっている:

result = []
indexes.each { |current| result << my_array[current] }

しかし、もっと良い方法があるはずです。

4

1 に答える 1

43

Array#mapを使用できます:

indexes.map { |i| my_array[i] }

またはさらに良いことに、Array#values_at

my_array.values_at(*indexes)

*記号は、メソッドに渡される引数に配列を抽出します。

于 2013-02-02T21:08:01.200 に答える