Java 8 : Les nouveautés

Appliquer des functions

TESTEZ LINKEDIN LEARNING GRATUITEMENT ET SANS ENGAGEMENT

Tester maintenant Afficher tous les abonnements
Les functions sont des types de fonction à une entrée et à un retour. Vous pouvez donc créer des variables qui pointent vers des fonctions.

Transcription

Les functions dans cette vidéo, ce sont des fonctions, des représentations sous formes d'objets, donc de références, des fonctions qui prennent un paramètre et qui retournent quelque chose. Par exemple, je vais traiter de la fonction qui traite un entier et qui retourne un double. cette fonction va s'appeler celsius Vers Fahrenheit et la formule c'est, à partir d'une variable x, donner une valeur qui est calculée comme (x * 9/5+34). Donc là j'ai les moyens de représenter une fonction qui convertit les Celsius en Fahrenheit. En l'occurence ici, il va me demander d'importer la classe Function que je trouve dans java.util.function. Après, pour appliquer cette function, ce dont j'ai besoin c'est d'appeler la méthode apply sur cette fonction-là. Donc si je reprends cette fonction celsiusVersFahrenheit .apply, puis je fournis un entier. Donc mettons que par exemple je m'intéresse à la valeur de 100 degrés Celsius et je vais le faire apparaître, System.out.println. Exécution de la chose, donc 212. Si je veux voir la valeur à zéro, voilà, 32 . 0. Donc ici, la représentation sous forme de référence d'une fonction que je peux ensuite appliquer à plusieurs endroits. Alors ça, en Java aujourd'hui ça pouvait se faire, mais en créant soi-même l'objet qui allait encapsuler la fonction, bien sûr. Bien entendu, la fonction peut s'appliquer à des choses un peu plus compliquées, complexes en termes de paramètres de généricité. Par exemple Function˂liste˂ Integer˃ virgule Integer pourrait être une fonction qui somme, donc par exemple, pour une liste donnée, ferait le calcul suivant. Alors les Lambda Expressions ne sont pas limitées à une seule ligne. C'est vrai que quand la Lambda Expression reste sur une seule ligne, elle a tendance à être plus simple. Mais on pourrait très bien imaginer la chose suivante, total = 0, on finira par return total. Et entre les deux, on aura traité pour chaque élément que j'ai dans ma liste, donc Integer que j'ai dans ma liste, alors total +=la valeur de i; donc quelque chose comme ça, donc ici il me rappelle après l'implantation de java.util.list, voilà. Maintenant, pour appliquer ma somme sur une liste d'entiers, je vais appeler sur la fonction qui s'appelle somme.apply et là je vais fournir une liste de valeurs entières, que je peux construire à partir de la classe Arrays, en fournissant ma liste de valeurs entières. Ici donc toList, asList. Ici je récupère le total, une valeur totale qui va être un entier, que je saurai faire afficher par la suite, " + valeur. Petite exécution pour vérifier l'affaire. Valeur 25, donc 3, 4, 5, 6, 7. Valeur 25, c'est tout bon. Donc voilà la présentation de ce qu'on appelle les functions dans java.util.function, qui sont donc des moyens de réifier les fonctions que l'on peut déclencher ensuite sur un ensemble de paramètres divers et variés.

Java 8 : Les nouveautés

Découvrez les nouveautés introduites par la version 8 de Java. Voyez les expressions lambda, les références de méthodes, les méthodes par défaut dans les interfaces, etc.

1h44 (21 vidéos)
Aucun commentaire n´est disponible actuellement
Logiciel :
Spécial abonnés
Date de parution :17 août 2015

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !