Qu'est-ce Qu'une "vue" Java 8?
Je regarde une conférence de Paul Philips:
Http://www.youtube.com/watch?v=TS1lpKBMkgg
À 12: 48, Il dit "en Java 8 leurs vues fonctionnent réellement" en comparant Scala et Java
Quelles sont les "vues" Java et quel est L'équivalent de Scala ?
Mise à jour: grâce à la réponse de Daniel, j'ai trouvé cet article utile: http://www.scala-lang.org/docu/files/collections-api/collections_42.html
1 réponses
Stream de Java 8 est ce qu'il veut dire par vues. Ils ont deux propriétés importantes:
- ils ne sont pas stricts, ce qui signifie qu'ils ne produisent le résultat qu'à la demande.
- ils "fusionnent" ensemble plusieurs opérations, de sorte que vous pouvez faire plusieurs appels
mapoufilter, et la collection d'origine ne sera toujours itérée qu'une seule fois.
Les équivalents de Scala sont les différentes collections View, que vous pouvez obtenir en appelant .view sur une collection existante. Ils ont ces propriétés -- ce sont les propriétés définissant, après tout-mais sont en proie à des lacunes et des bugs, sans parler d'une implémentation très complexe.
Paul a joué avec des implémentations alternatives pour cela, mais cela n'a jamais été une priorité de les remplacer.