Java 8 - Classe facultative
Facultatif est un objet conteneur utilisé pour contenir des objets non nuls. L'objet facultatif est utilisé pour représenter null avec une valeur absente. Cette classe a diverses méthodes utilitaires pour permettre au code de gérer les valeurs comme « disponibles » ou « non disponibles » au lieu de vérifier les valeurs nulles. Il est introduit dans Java 8 et est similaire à ce qu'est Optional dans Guava.
Déclaration de classe
Voici la déclaration pour java.util.Optional
public final class Optional<T> extends Object
Méthode de classe
Sr.No. | Méthode et description |
---|---|
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 |
Cette classe hérite des méthodes de la classe suivante −
- java.lang.Object
Exemple facultatif
Créez le programme Java suivant à l'aide de l'éditeur de votre choix dans, par exemple, C:\> JAVA.
Java8Tester.java
Démo en directimport java.util.Optional; public class Java8Tester { public static void main(String args[]) { Java8Tester java8Tester = new Java8Tester(); Integer value1 = null; Integer value2 = new Integer(10); //Optional.ofNullable - allows passed parameter to be null. Optional<Integer> a = Optional.ofNullable(value1); //Optional.of - throws NullPointerException if passed parameter is null Optional<Integer> b = Optional.of(value2); System.out.println(java8Tester.sum(a,b)); } public Integer sum(Optional<Integer> a, Optional<Integer> b) { //Optional.isPresent - checks the value is present or not System.out.println("First parameter is present: " + a.isPresent()); System.out.println("Second parameter is present: " + b.isPresent()); //Optional.orElse - returns the value if present otherwise returns //the default value passed. Integer value1 = a.orElse(new Integer(0)); //Optional.get - gets the value, value should be present Integer value2 = b.get(); return value1 + value2; } }
Vérifier le résultat
Compilez la classe en utilisant javac compilateur comme suit −
C:\JAVA>javac Java8Tester.java
Exécutez maintenant le Java8Tester comme suit −
C:\JAVA>java Java8Tester
Il devrait produire la sortie suivante −
First parameter is present: false Second parameter is present: true 10
Java