2013-04-17 2 views
1

У меня есть массив a. Я хочу создать новый массив с одним или несколькими элементами, выбранными. Полученный массив должен выглядеть следующим образом:рубин выбрать (выбрать) индексы из коллекции

[a[5], a[7], a[8]] 

Как я могу сделать этот выбор, передавая массив индексов [5,7,8]? Я представил себе что-то вроде:

b = a.select([5,7,8]) 

который не работает; select нужен блок для оценки. Я мог перечислить массив и выбрать вручную, но у меня такое ощущение, что это должно быть возможно более элегантно.

ответ

3

Использование Array#values_at.

b = a.values_at(*[5,7,8])