Maison >Java >javaDidacticiel >Quelle est l'importance de la méthodeOptional.or() dans Java 9 ?

Quelle est l'importance de la méthodeOptional.or() dans Java 9 ?

王林
王林avant
2023-08-22 15:57:021095parcourir

Java 9中Optional.or()方法的重要性是什么?

Dans Java 9, certaines méthodes statiques ont été ajoutées à la classe Optional8742468051c85b06f0a0af9e3e506b5c : stream(), or() et ifPresentOrElse(). L'introduction de la classe Optional résout le problème de Null Pointer Exception. La méthode

Optional.or() renvoie un Optional décrivant une valeur qui est renvoyée si elle est présente, sinon un facultatif généré par la fonction fournie.

Syntaxe

<strong>public Optional<T> or(Supplier<? extends Optional<? extends T><!--? extends Optional<? extends T-->> supplier)</strong>

Exemple

import java.util.Optional;
import java.util.function.Supplier;

public class OptionalOrTest {
   public static void main(String args[]) {
      <strong>Optional<String></strong> optional = <strong>Optional.of</strong>("TutorialsPoint");
      <strong>Supplier<Optional<String>></strong> supplierString = () -> <strong>Optional.of</strong>("Not Present");
      optional = <strong>optional.or</strong>(supplierString);
      optional.<strong>ifPresent</strong>(x -> System.out.println("Value: " + x));
      optional = <strong>Optional.empty()</strong>;
      optional = <strong>optional.or</strong>(supplierString);
      optional.<strong>ifPresent</strong>(x -> System.out.println("Value: " + x));
   }
}

Sortie

<strong>Value: TutorialsPoint
Value: Not Present</strong>

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