2013-05-17 16 views

risposta

10

dovrebbe essere facile da raggiungere:

(a zip b) zip c map { 
    case ((x, y), z) => (x, y, z) 
}; 
+6

o '(a, b, c) .zipped.toList' –

+0

Grazie alex23 e Myserious Dan. Funziona. Ora sembra così facile da risolvere. – Srinivas

6

Utilizzare:

(a zip b) zip c map { case ((av,bv),cv) => (av,bv,cv) } 

Nota: Questo sho rtens l'elenco dei risultati del più breve di a,b,c. Se preferisci che l'elenco dei risultati sia riempito con i valori predefiniti, utilizza zipAll.

12

Se si dispone di due o tre elenchi di cui avete bisogno compressi insieme è possibile utilizzare zip

val a = List("a", "b", "c") 
val b = List(1, 2, 3) 
val c = List(4, 5, 6) 

(a,b,c).zipped.toList 

Questo si traduce in: List((a,1,4), (b,2,5), (c,3,6))

Problemi correlati