Stream, parallelStream, ForEach, ForEachOrdered & Filter

Slides:



Advertisements
Présentations similaires
Methode de Tri efficace
Advertisements

8PRO107 Éléments de programmation
COUPLEX 1 Test Case Nuclear Waste Disposal Far Field Simulation D. VEYRET – M. GEORGIADOU I.U.S.T.I. – C.N.R.S. UMR 6595 Université de Provence 5 rue Enrico.
La fonction en escalier De la forme y = a[bx]. La valeur entre crochet [ ] correspond au plus grand entier inférieur ou égal à lui-même. Ex: [2,4] -2.
I21 Algorithmique et programmation II David Gross-Amblard, Joël Savelli IEM-uB GFDL 1.2 CM 6/8 v1.1.
Comparaison des méthodes de calcul de quartiles On considère la série statistique ci-dessous : Effectif total : 12.
Consigne : Développer et réduire les 3 premières expressions données ci-après. Factoriser les 3 dernières expressions données ci-après. Développer et réduire.
PR É PARER PAR: - REDJAI ABDELFATAH - BENATTOUS TAREK PR É PARER PAR: - REDJAI ABDELFATAH - BENATTOUS TAREK Theme Etude les fonctionnement de l’oscilloscope.
Consigne : Donner deux facteurs entiers compris entre 2 et 11 dont le produit est égal au nombre donné. Thème 02 : Tables de multiplication Séance 1 4e4e27/09/2016.
Tableaux en C Mardi 2/05.
Semaine 8 Retour sur les tableaux : fonctions et récursivité
Utiliser le calcul littéral pour résoudre ou démontrer
Les tableaux différencier les variables simples des variables indicées (ordonnées et numérotées) un identificateur unique désigne un ensemble, une collection.
Environnement de développement des BD
La symétrie et l’aire de la surface
Construire des requêtes
Plateforme CountrySTAT Aperçu global de la préparation des tableaux dans la nouvelle plateforme CountrySTAT FORMATION DES POINTS FOCAUX SUR LE SYSTEME.
Préparez-vous.
Algorithmiques Abdelbasset KABOU
Logique Combinatoire.
Université Stendhal - Grenoble
Les nombres rationnels
Langage de manipulation de données (LMD)
Techniques de décomposition
CONCEPTION DE DIAPORAMA
Matrices, déclaration en CSharp
Programmation Numération Compétences visées Période
Astuces jquery.
POL1803: Analyse des techniques quantitatives
Chapitre 2: Les équations et les inéquations polynômes
Classification des archtecutres paralleles
La droite de régression
MOYENNE, MEDIANE et ECART TYPE d’une série statistique
Expression régulières
Les tableaux.
Containeurs & Itérateurs
Les fractions.
Cinquième Chapitre 1: Nombres décimaux
Recherche Tous les formulaires peuvent être combinés afin de trouver la notice à exemplariser : Recherche par ISSN ou PPN Combinaison de trois index Filtres.
 Introduction L’électrotechnique et l’électronique de puissance ont leur place dans les fonctions de traction/freinage dynamique et les auxiliaires associés.
Module: Logique Mathématique. SOMMAIRE 1- Notions d’ensembles 2- Constructions d’ensembles 3- Cardinal d’ensembles 4- Relations d’ensembles ordonnées.
Modélisation avec UML 2.0 Partie II Diagramme de classes.
Calcul Scientifique Initiation à SCILB
2 Copyright © 2004, Oracle. Tous droits réservés. Restreindre et trier les données.
Bases de données sous Access. Initiation aux bases de données  Structure d’une base de données.
ALBUMS et MATHEMATIQUE au cycle 1
© Robert Godin. Tous droits réservés.
Comment personnaliser Microsoft SharePoint Site web
Les classes et les objets
Programmation Android Les listes
AIAC GEET-12 Année : Régulation Industrielle: Programme M.BAHATTI.
La puissance du transfert d’énergie électrique entre un générateur et un circuit constitué de conducteurs ohmiques dépend-elle de ces conducteurs ohmiques.
STAT D103 Esteban Callejas Perez H.4.145
Les structures de base Listes chainées. Listes Les listes(similaire aux tableaux) sont des structures informatiques qui permettent de garder en mémoire.
Plateforme CountrySTAT Aperçu global de la préparation des tableaux dans la nouvelle plateforme CountrySTAT FORMATION DES POINTS FOCAUX SUR LE SYSTEME.
PROGRAMMATION ET ENSEIGNEMENT
Guide de l’utilisateur du gestionnaire
Piles et files.
Ouverture d’image PGM et éléments d’affichage graphique
Les tris Tri Action de mettre une structure de données en ordre (croissant ou décroissant). Le plus simple est d’insérer en ordre. Les algorithmes de tri.
Listes Chaînées.
Lecture/Écriture de fichiers (I/O)
Analyse et programmation langage ADA
Gestion de liste: Réalisé par: Amal ABBOU Mariam El ALLAMI Tri Filtre.
1 O ffice De La F ormation P rofessionnelle Et De La P romotion De T ravail I nstitut S pécialiste en T echnologie A ppliquée -ASSA Prof. : Omar BOUNHAS.
50 raccourcis clavier dans Outlook pour gagner du temps
PROGRAMMATION SOUS R. PRESENTE PAR : ACHETTOU ISMAIL LAARICH TARIQ ENCADRE PAR : Pr. EXPOSÉ SUR LA PROGRAMMATION SUR R 2.
Tableaux : Algorithmes de recherches
LINQ. LINQ (Language-Integrated Query) est une nouveauté du.NET Framework 3.5 C’est le nom d’un ensemble de technologies basé sur l’intégration de fonctions.
Problèmes multiplicatifs
Transcription de la présentation:

Stream, parallelStream, ForEach, ForEachOrdered & Filter .stream() Permet de créer un flux séquentiel .parallelStream() Permet de créer un flux parallèle .forEach() Itération à l’aide d’une lambda expression .forEachOrdered() Itération ordonnée à l’aide d’une lambda expression .filter() Filtre un flux Exemples: Integer tabObj[] = { 3, 8, 2, -4, 0, 12, 8, -5, 3, -4, 15}; List<Integer> liste = Arrays.asList(tabObj); --- Filtrage des valeurs > 0 avec une collection --- liste.stream().filter(ee -> ee> 0).forEach(ee -> System.out.print(ee + "  " )); 3 8 2 12 8 3 15 --- Filtrage des >0 avec une collection, en parallèle --- liste.parallelStream().filter(ee -> ee> 0).forEach(ee -> System.out.print(ee + "  " )); 8 12 15 2 8 3 3 --- Filtrage des >0 avec une collection, en parallèle avec forEachOrdered --- liste.parallelStream().filter(ee -> ee> 0).forEachOrdered(ee -> System.out.print(ee + "  " ));

La méthode Map .map() Fait correspondre à chaque élément d’un flux une valeur (éventuellement d’un autre type) Exemples: .map (ee -> ee * ee) Appliqué à un flux d’entier, cette méthode donnera le carré des éléments .map(pp -> pp.getX()) Appliqué à une flux de classe Point, elle fera correspondre à chaque élément l’abscisse de l’élément .map(xx -> Point(xx, xx)) Appliqué à une flux d’entier, elle fait correspondre à chaque entier un point d’abscisse et d’ordonnées égales à l’élément

Autres méthodes .mapToInt() Transforme un flux en flux d’entiers .average() Calcule la moyenne .orElse(0.0) Valeur par défaut à 0 .findFirst() Trouver le premier élément .sorted() Trie par ordre alphabétique .distinct() Supprime les doublons .

Autres exemples: .stream() (1) .filter(entry -> entry.getValue().isPresent()) (2) .sorted(Map.Entry.comparingByValue((o1, o2) -> -Integer.compare(o1.getAsInt(), o2.getAsInt()))) (3) .limit(n) (4) .map(Map.Entry::getKey) (5) .collect(Collectors.toList()); (6) 1 – Création du flux 2 – Filtrage des éléments pour lesquels une valeur est présente isPresent() 3 – Trie le flux par comparaison des valeurs entières des objets. 4 – Limite le flux à n éléments 5 – Remplace chacun des éléments par le résultat de l’accesseur getKey() 6 – Transformation du stream en collection

Autres exemples: .stream() (1) .filter(Personnage::isSuccessful) (2) .sorted(Comparator.comparingDouble(personnage -> -personnage.averageScore())) (3) .collect(Collectors.toList()); (4) 1 – Création du flux 2 – Filtrage des éléments en fonction de l’accesseur isSuccessfull 3 – Trie les éléments sur base de leur score moyen averageScore() 4 – Transformation du stream en collection .flatMapToInt(student -> eleve.getScoreByCourse().values().stream().mapToInt(Integer::intValue)) (2) .average() (3) .orElse(0.0); (4) 2 – Renvoi le résultat de la transformation Map sous forme de flux 3 – Calcule la moyenne 4 – Alternative en cas d’absence d’élément = 0

Autres exemples: .stream() (1) .sorted(Map.Entry.comparingByValue(Comparator.reverseOrder())) (2) .map(Map.Entry::getKey) (3) .findFirst(); (4) 1 – Création du flux 2 – Trie les flux par ordre décroissant 3 – Remplace chaque élément par le résultat de l’accesseur getKey 4 – Trouve le premier élément