Digamos que eu tenha uma matriz. Desejo passar a matriz para uma função. A função, no entanto, espera dois argumentos. Existe uma maneira de converter rapidamente a matriz em 2 argumentos? Por exemplo:
a = [0,1,2,3,4]
b = [2,3]
a.slice(b)
Resultaria em um erro em Ruby. Preciso contribuir a.slice(b[0],b[1])
. Estou procurando algo mais elegante, como em a.slice(foo.bar(b))
Obrigado.
Respostas:
Você pode transformar um
Array
em uma lista de argumentos com o*
operador (ou "splat"):Referência:
fonte
Usa isto
É chamado de operador splat
fonte