Ho una funzione denominata or
ad esempio, che è definita come;Passaggio di elementi di un elenco come parametri a una funzione con argomenti variabili
or(filters: FilterDefinition*)
E poi ho una lista:
List(X, Y, Z)
Quello che ora dobbiamo fare è chiamata or
come
or(func(X), func(Y), func(Z))
E come previsto la lunghezza della lista potrebbe cambiare.
Qual è il modo migliore per farlo in Scala?
Non esattamente la stessa domanda, ma fornisce la notazione ': _ *' che è la chiave della risposta (assumendo che tu possa semplicemente 'list.map (func)'!): Http://stackoverflow.com/questions/ 1008783 –
Se passiamo gli interi elementi della lista e li elaboriamo tutti nella funzione chiamata zione, quindi può anche essere fatto semplicemente passando l'elenco alla funzione e la funzione può iterare attraverso gli elementi, senza la necessità di una sintassi speciale di: _ *, giusto? O potrei sbagliarmi, c'è qualche buona ragione per questo utilizzo? – user3366706
@ user3366706 sarebbe l'approccio più tradizionale per fare le cose, sì. Per me è stato incredibilmente utile quando si trattava di un DSL che prevedeva una query generata come argomento della funzione, con un numero variabile di argomenti. – Ashesh