Java >> Java tutorial >  >> Tag >> boolean

Hvordan udfører man en handling, hvis en valgfri boolean er sand?

For god orden

if (spouseIsMale.orElse(false)) {
    System.out.println("There is a male spouse.");
}

Ryd.


Det er muligt at opnå den adfærd med .filter(b -> b) :

spouseIsMale.filter(b -> b).ifPresent(b -> System.out.println("There is a male spouse."));

Det koster dog noget hjerneudførelsestid sekunder for at forstå, hvad der foregår her.


For dem, der ønsker at skrive dette uden traditionelif(condition){ //Do something if true; }

Optional.of(Boolean.True)
    .filter(Boolean::booleanValue)
        .map(bool -> { /*Do something if true;*/ })

Java tag