Inférence de type de variable locale dans Java 10 : Comment utiliser le mot-clé final var dans les expressions lambda
Avec la sortie de Java 10, une nouvelle fonctionnalité : l'inférence de type de variable locale a été introduite. Cette fonctionnalité vous permet d'utiliser le mot-clé var au lieu d'un type spécifique lors de la déclaration de variables locales, et le compilateur déduira automatiquement le type de variable en fonction de l'expression d'initialisation de la variable. Cette fonctionnalité simplifie non seulement le code, mais améliore également la lisibilité et la maintenabilité du code. Dans cet article, nous explorerons comment utiliser le mot-clé final var dans les expressions lambda pour obtenir un code plus propre.
Tout d’abord, examinons comment fonctionne l’inférence de type de variable locale dans Java 10. Voici un exemple simple :
final var message = "Hello, World!";
System.out.println(message);
Dans le code ci-dessus, nous avons déclaré une variable nommée message en utilisant le mot-clé var et initialisons à la chaîne "Hello, World!". Le compilateur déduira que le type du message est String en fonction de l'expression d'initialisation, il n'est donc pas nécessaire de spécifier explicitement le type. Nous pouvons alors utiliser la variable message comme n’importe quel autre type.
Maintenant, explorons comment utiliser le mot-clé final var dans les expressions lambda. Voici un exemple utilisant une expression lambda :
final var number = List.of(1, 2, 3, 4, 5);
numbers.forEach((final var number) -> System.out.println( number ));
Dans le code ci-dessus, nous avons déclaré une variable nommée nombres à l'aide du mot-clé var et l'avons initialisée avec une liste de cinq entiers. Nous appelons ensuite la méthode forEach de la liste, en passant une expression lambda comme argument. Dans l'expression lambda, nous déclarons une variable appelée number à l'aide du mot-clé final var et l'initialisons sur chaque élément de la liste. Le compilateur déduira que le type du nombre est un entier basé sur l'expression d'initialisation, il n'est donc pas nécessaire de spécifier explicitement le type. On peut alors utiliser la variable number dans une expression lambda, par exemple pour afficher sa valeur.
En utilisant le mot-clé final var dans les expressions lambda, nous pouvons éviter d'écrire à plusieurs reprises le type de variable dans le code, rendant le code plus concis et lisible. Ceci est particulièrement utile lorsque vous devez écrire beaucoup de code utilisant des expressions lambda.
Cependant, il convient de noter que lors de l'utilisation du mot-clé final var dans une expression lambda, la variable doit être de type final. En effet, les variables référencées dans l'expression lambda doivent être immuables pour garantir qu'elles restent inchangées lors de l'exécution de l'expression lambda. Si vous essayez de modifier la valeur d'une variable var finale, le compilateur signalera une erreur.
Bien que l'utilisation du mot-clé final var dans les expressions lambda rende le code plus concis, vous devez également veiller à ce que le code reste lisible et maintenable. Lorsque vous nommez des variables, vous devez choisir des noms significatifs afin que les lecteurs puissent comprendre la signification des variables et que le code puisse être facilement géré.
En résumé, l'inférence de type de variable locale dans Java 10 nous offre une manière plus concise et lisible d'écrire du code. En utilisant le mot-clé final var dans les expressions lambda, nous pouvons éviter d'écrire à plusieurs reprises le type de la variable, ce qui rend le code plus concis et lisible. Cependant, il est important de noter que lors de l'utilisation du mot-clé final var dans une expression lambda, la variable doit être de type final. Dans le développement réel, nous devons peser l'équilibre entre simplicité et lisibilité apporté par l'utilisation du mot-clé final var.
J'espère que cet article pourra vous aider à mieux comprendre l'inférence de type de variable locale dans Java 10 et à utiliser le mot-clé final var de manière plus flexible dans l'écriture de code.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!