ruby преобразовать массив в аргументы функции

98

Скажем, у меня есть массив. Я хочу передать массив функции. Однако функция ожидает два аргумента. Есть ли способ на лету преобразовать массив в 2 аргумента? Например:

a = [0,1,2,3,4]
b = [2,3]
a.slice(b)

Выдает ошибку в Ruby. Мне нужно ввести данные. a.slice(b[0],b[1])Я ищу что-то более элегантное, например " a.slice(foo.bar(b)) Спасибо".

user1134991
источник

Ответы:

95

Использовать это

a.slice(*b)

Это называется оператором splat

Серджио Тюленцев
источник