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

Tjek, om alle elementer på en liste er indstillet til den samme booleske værdi

Du kan bruge Stream.noneMatch() for at gøre dette:

if (bricks.stream().noneMatch(GameObj::isVisible)) {
    doStuffIfAllBricksAreInvisible();
}

Dette returnerer sandt, hvis alle klodser er usynlige.

Derudover vil jeg anbefale at tage et kig på Stream.allMatch() , som returnerer sand, hvis alle elementer på listen matcher det givne prædikat.

Bruger allMatch() dette ville se sådan ud:

if (bricks.stream().allMatch(b -> !b.isVisible())) {
    doStuffIfAllBricksAreInvisible();
}

For at fuldføre dette kan du også tage et kig på Stream.anyMatch() , som returnerer sand, hvis et af elementerne matcher det givne prædikat.


Java tag