osElse Renvoie la valeur int de l'argument lorsque OptionalInt est nul
System.out.println(IntStream.of(1, 2, 3).findFirst().orElse(100)); //=>Renvoie le 1 gagné par findFirst
System.out.println(IntStream.of().findFirst().orElse(100)); //=>Renvoie 100 comme argument car il ne peut pas être obtenu avec findFirst
orElseGet Exécutez l'argument Supplier lorsque OptionalInt est nul
System.out.println(IntStream.of(1, 2, 3).findFirst().orElseGet(() -> 100)); //=>Renvoie le 1 gagné par findFirst
System.out.println(IntStream.of().findFirst().orElseGet(() -> 100)); //=>Parce que vous ne pouvez pas l'obtenir avec findFirst()->100 est exécuté pour obtenir la valeur de retour de 100
Probablement nommé d'après une méthode appelée ifPresent Étant donné que ifPresent est une méthode void, elle ne peut pas coexister avec orElse dans la chaîne de méthodes.
//Ce qui suit est une erreur de compilation
ifPresent(System.out::println).orElse(0);
Recommended Posts