Ho due elenchi, voglio sommare ogni elemento nell'elenco A con l'elemento nell'elenco B, producendo un nuovo elenco.Il modo più semplice per sommare due elenchi in Scala?
posso farlo con:
List(1,2).zip(List(5,5)).map(t => t._1 + t._2)
C'è un modo più semplice o più ordinato di fare questo a Scala?
In Clojure posso solo fare:
(map + [1 2 3] [4 5 6])
Lisp-y 'map's in genere funziona con funzioni che accettano un numero qualsiasi di input. Scala, Haskell e gli amici, d'altra parte, definiscono solo 'map' per le funzioni che accettano 1 input. Quindi, in Scala, avrai sempre bisogno di eseguire qualche forma di zipping per racchiudere più input in una singola tupla. –
Lisp sembra carino in qualche modo. – Phil
Nota anche 'map' in lisp è simile a quello che sono solito chiamare' zipWith', 'zipWith3', etc in Haskell. –