Notering af numre inden for et interval i Java

1. Oversigt

I denne vejledning udforsker vi forskellige måder at liste sekvenser af tal inden for et interval.

2. Notering af numre inden for et interval

2.1. Traditionel til Sløjfe

Vi kan bruge en traditionel til loop for at generere tal i et specificeret interval:

public List getNumbersInRange (int start, int end) {List result = new ArrayList (); for (int i = start; i <end; i ++) {result.add (i); } returnere resultat }

Koden ovenfor genererer en liste, der indeholder tal fra Start (inklusive) til ende (eksklusiv).

2.2. JDK 8 IntStream.range

IntStream, introduceret i JDK 8, kan bruges til at generere tal i et givet interval, hvilket letter behovet for en til løkke:

offentlig liste getNumbersUsingIntStreamRange (int start, int end) {return IntStream.range (start, end). boxed () .collect (Collectors.toList ()); }

2.3. IntStream.rangeClosed

I det foregående afsnit blev ende er eksklusiv. For at få tal i et interval, hvor ende er inkluderende, der er IntStream.rangeClosed:

offentlig liste getNumbersUsingIntStreamRangeClosed (int start, int end) {return IntStream.rangeClosed (start, end) .boxed () .collect (Collectors.toList ()); }

2.4. IntStream.iterate

De foregående sektioner brugte et interval til at få en række af tal. Når vi ved, hvor mange tal i en sekvens der er behov for, kan vi bruge IntStream.iterate:

offentlig liste getNumbersUsingIntStreamIterate (int start, int limit) {return IntStream.iterate (start, i -> i + 1). limit (limit). boxed () .collect (Collectors.toList ()); }

Her, den begrænse parameter begrænser antallet af elementer, der skal gentages.

3. Konklusion

I denne artikel så vi forskellige måder at generere tal inden for et interval.

Kodestykker kan som altid findes på GitHub.


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