Maison >Java >javaDidacticiel >Interface LongToIntFunction en Java
LongToIntFunction en Java est une interface fonctionnelle qui accepte un paramètre de type long et renvoie un résultat de type int. 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 fonctionnelle de cette interface est "applyAsInt()", qui prend une valeur longue comme paramètre et renvoie un résultat de valeur int.
int applyAsInt(long value);
Pour implémenter cette interface fonctionnelle, veuillez suivre les étapes ci-dessous -
Étape 1 - Créez une instance de l'interface fonctionnelle en définissant une expression lambda qui implémente la méthode applyAsInt(long value).
Étape 2 - Appelez la méthode applyAsInt(long value) sur l'instance d'interface fonctionnelle, en transmettant une valeur longue en entrée.
Étape 3 - Utilisez la sortie de la méthode applyAsInt(long value) dans votre code si nécessaire.
Vous pouvez définir une expression lambda pour implémenter la méthode apply(long value) de l'interface LongToIntFunction.
import java.util.function.LongToIntFunction; public class LambdaExample { public static void main(String[] args) { LongToIntFunction square = value -> (int) (value * value); int result = square.applyAsInt(5L); System.out.println(result); } }
25
L'instance LongToIntFunction square renvoie le carré de la valeur longue d'entrée 5L, qui est 25.
Vous pouvez utiliser une référence de méthode pour implémenter la méthode applyAsInt(long value) de LongToIntFunction.
import java.util.function.LongToIntFunction; public class MethodReferenceExample { public static void main(String[] args) { LongToIntFunction digitCount = String::valueOf; int result = digitCount.applyAsInt(9876543210L); System.out.println(result); } }
31
Nous créons une instance LongToIntFunction nommée digitalCount en utilisant une référence de méthode à la méthode valueOf de la classe String. Pour obtenir le résultat souhaité, cette technique consiste à convertir une valeur longue entrée en une représentation sous forme de chaîne, puis à calculer sa longueur et à la renvoyer sous forme d'entier. Nous appelons ensuite la méthode applyAsInt sur l'instance digitalCount avec la valeur longue d'entrée 9876543210L, qui renvoie le nombre de chiffres dans la valeur longue sous forme d'entier. Les résultats sont imprimés sur la console.
import java.util.function.LongToIntFunction; public class AnonymousClassExample { public static void main(String[] args) { LongToIntFunction binaryLength = new LongToIntFunction() { @Override public int applyAsInt(long value) { return Long.toBinaryString(value).length(); } }; int result = binaryLength.applyAsInt(123456789L); System.out.println(result); } }
27
Dans cet exemple, l'instance DigitCount de LongToIntFunction renvoie le nombre de chiffres dans la valeur longue d'entrée 9876543210L, qui est 10. Les résultats sont imprimés sur la console.
Standard |
Méthode 1 |
Méthode 2 |
Méthode 3 |
---|---|---|---|
Type |
Expression Lamda |
Référence de méthode |
Classe intérieure anonyme |
Méthode |
applyAsInt (valeur longue) |
applyAsInt (valeur longue) |
applyAsInt (valeur longue) |
Logique de la méthode |
renvoie une valeur int |
renvoie une valeur int |
renvoie une valeur int |
En utilisant ces méthodes, vous pouvez utiliser l'interface LongAsIntFunction de différentes manières pour implémenter des fonctions personnalisées qui prennent des valeurs longues en entrée et renvoient différents types de résultats.
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!