Auflisten von Nummern innerhalb eines Bereichs in Java

1. Übersicht

In diesem Tutorial werden verschiedene Möglichkeiten zum Auflisten von Zahlenfolgen innerhalb eines Bereichs untersucht.

2. Auflisten von Nummern in einem Bereich

2.1. Traditionell für Loop

Wir können eine traditionelle for- Schleife verwenden, um Zahlen in einem bestimmten Bereich zu generieren:

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

Der obige Code generiert eine Liste mit Zahlen von Anfang (einschließlich) bis Ende (exklusiv).

2.2. JDK 8 IntStream.range

IntStream , das in JDK 8 eingeführt wurde, kann zum Generieren von Zahlen in einem bestimmten Bereich verwendet werden, wodurch die Notwendigkeit einer for- Schleife verringert wird :

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

2.3. IntStream.rangeClosed

Im vorherigen Abschnitt ist das Ende exklusiv. Um Zahlen in einem Bereich zu erhalten, in dem das Ende eingeschlossen ist, gibt es IntStream.rangeClosed :

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

2.4. IntStream.iterate

In den vorherigen Abschnitten wurde ein Bereich verwendet, um eine Folge von Zahlen abzurufen. Wenn wir wissen, wie viele Zahlen in einer Sequenz benötigt werden, können wir IntStream.iterate verwenden :

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

Hier begrenzt der Parameter limit die Anzahl der Elemente, über die iteriert werden soll.

3. Fazit

In diesem Artikel haben wir verschiedene Möglichkeiten zum Generieren von Zahlen innerhalb eines Bereichs gesehen.

Code-Schnipsel finden Sie wie immer auf GitHub.