Sådan bruges hvis / andet Logik i Java 8 Streams

1. Oversigt

I denne vejledning skal vi demonstrere, hvordan man implementerer hvis / ellers logik med Java 8 Strømme. Som en del af vejledningen opretter vi en simpel algoritme til at identificere ulige og lige tal.

Vi kan se på denne artikel for at indhente Java 8 Strøm grundlæggende.

2. Konventionel hvis ellers Logik indeni for hver()

Lad os først oprette en Heltalsliste og brug derefter konventionel hvis / ellers logik inden for Heltal strøm for hver() metode:

Listeinter = Arrays.asList (1, 2, 3, 4, 5, 6, 7, 8, 9, 10); ints.stream () .forEach (i -> {if (i.intValue ()% 2 == 0) {Assert.assertTrue (i.intValue ()% 2 == 0);} ellers {Assert.assertTrue (i .intValue ()% 2! = 0);}});

Vores for hver metoden indeholder if-else-logik, der verificerer, om Heltal er et ulige eller lige tal ved hjælp af Java modulus-operatoren.

3. hvis ellers Logik med filter()

For det andet, lad os se på en mere elegant implementering ved hjælp af Stream filter () metode:

Stream evenIntegers = ints.stream () .filter (i -> i.intValue ()% 2 == 0); Stream oddIntegers = ints.stream () .filter (i -> i.intValue ()% 2! = 0); evenIntegers.forEach (i -> Assert.assertTrue (i.intValue ()% 2 == 0)); oddIntegers.forEach (i -> Assert.assertTrue (i.intValue ()% 2! = 0));

Ovenfor implementerede vi if / else-logikken ved hjælp af Stream filter () metode at adskille Heltalsliste i to Strøms, en for lige heltal og en anden for ulige heltal.

4. Konklusion

I denne hurtige artikel har vi undersøgt, hvordan du opretter en Java 8 Strøm og hvordan man implementerer hvis / ellers logik ved hjælp af for hver() metode.

Desuden lærte vi, hvordan man bruger Stream filter metode til at opnå et lignende resultat på en mere elegant måde.

Endelig er den komplette kildekode, der bruges i denne vejledning, tilgængelig på Github.


$config[zx-auto] not found$config[zx-overlay] not found