Maison >Java >javaDidacticiel >Interface LongFunction en Java

Interface LongFunction en Java

WBOY
WBOYavant
2023-09-15 12:53:06941parcourir

Interface LongFunction en Java

LongFunction en Java est une interface fonctionnelle qui accepte un paramètre de type long et renvoie un résultat d'un autre type. Une interface fonctionnelle est une interface avec une seule méthode abstraite. Pour utiliser d’abord cette interface, vous devez importer le package java.util.function.

La méthode fonction de cette interface est "apply()", qui prend une valeur longue comme paramètre et renvoie le résultat de la fonction représenté par R.

Grammaire

R apply(long value);

Algorithme

Afin d'implémenter efficacement cette interface fonctionnelle dans votre travail, trois étapes de définition doivent être suivies au préalable.

  • Tout d'abord, la configuration d'une instance d'une telle implémentation nécessite de définir une expression lambda appropriée qui peut prévisualiser avec précision ce qui sera utilisé dans sa fonction "appliquer" lorsqu'une variable ou un argument de type long est fourni.

  • Après avoir configuré un algorithme spécifique via l'étape 1 ici, passez à l'étape 2 - en appelant "apply" sur ladite instance tout en ajoutant respectivement les entrées de paramètres de type long. Une fois les étapes 1 et 2 exécutées de manière satisfaisante, il est temps de passer à notre troisième et dernière étape : utiliser toutes les valeurs de sortie des étapes précédentes dans la zone disponible dans notre code en cours.

Méthode 1 : Définir l'expression Lambda

Vous pouvez définir une expression lambda pour implémenter la méthode apply(long value) de l'interface LongFunction.

Exemple

import java.util.function.LongFunction;
public class LongFunctionExample {
   public static void main(String[] args) {
      LongFunction<String> longToString = l -> Long.toString(l);
      String result = longToString.apply(123L);
      System.out.println(result);
   }
}

Sortie

123

Instructions

Ce code crée une LongFunction qui convertit une valeur longue en String

Méthode 2 : Utilisation des références de méthode

Vous pouvez utiliser des références de méthode pour implémenter la méthode apply(long value) de LongFunction.

Exemple

import java.util.function.LongFunction;
public class LongFunctionExample {
   public static void main(String[] args) {
      LongFunction<Integer> countDigits = Long::toString().length;
      int result = countDigits.apply(12345L);
      System.out.println(result);
   }
}

Sortie

12345

Instructions

Crée une LongFunction qui renvoie le nombre de chiffres dans une valeur longue.

Méthode 3 : Utiliser des fonctions prédéfinies

Pour utiliser une fonction prédéfinie qui implémente l'interface LongFunction, vous créez une instance de l'interface et transmettez la fonction prédéfinie en tant qu'expression lambda ou référence de méthode.

Exemple

import java.util.function.LongFunction;
public class LongFunctionExample {
   public static void main(String[] args) {
      LongFunction<Double> sqrt = Math::sqrt;
      double result = sqrt.apply(16L);
      System.out.println(result);
   }
}

Sortie

4.0

Instructions

Dans la fonction prédéfinie sqrt ci-dessus, LongFunction est implémentée.

Comparaison entre méthodes

Standard

Méthode 1

Méthode 2

Méthode 3

Type

Expression Lamda

Référence de méthode

Fonctions prédéfinies

Méthode

Application (valeur longue)

Application (valeur longue)

Application (valeur longue)

Logique de la méthode

retourner une valeur longue

retourner une valeur longue

retourner une valeur longue

Conclusion

Il existe plusieurs façons de vous aider à utiliser l'interface LongFunction. Ces méthodes vous permettent de créer des fonctions personnalisées qui acceptent des valeurs longues comme arguments et produisent différents types de sortie. Vous pouvez appliquer ces fonctionnalités dans différents scénarios. Du filtrage des données à la cartographie et à la réduction des collections.

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer