Teilen Sie eine geordnete Liste von Zahlen in mehrere Listen auf, basierend auf der Differenz zwischen Elementen mithilfJava

Java-Forum
Guest
 Teilen Sie eine geordnete Liste von Zahlen in mehrere Listen auf, basierend auf der Differenz zwischen Elementen mithilf

Post by Guest »

Ich stelle hier zum ersten Mal eine Frage, also gehen Sie bitte vorsichtig mit mir um. :) Wie auch immer, ich bin mir nicht sicher, ob dies mit einem Java 8-Stream möglich ist, aber ich bin sehr daran interessiert, es zu lernen.

Nehmen wir an, ich habe die folgende geordnete Liste von Zahlen :

Code: Select all

List myList = Arrays.asList(1, 2, 3, 7, 9, 12, 13, 15);
Jetzt möchte ich diese Liste in mehrere Listen aufteilen, wenn die Differenz zwischen Elementen größer als 2 ist. Daher wären das Endergebnis drei verschiedene Listen:

Code: Select all

{1, 2, 3}
{7, 9}
{12, 13, 15}
Ich könnte diese Übung leicht durchführen, indem ich eine for-Schleife verwende und während der Schleife das aktuelle Element mit dem vorherigen vergleiche. Ich frage mich jedoch, ob es eine einfache Möglichkeit gibt, dies mithilfe eines Java 8-Streams zu erreichen? Wie ich bereits sagte, dient dies nur meinem eigenen Lernen und Verstehen von Java 8. Wenn es also nicht möglich ist, ist das in Ordnung.

Vielen Dank im Voraus für alle Kommentare oder Kommentare Antworten.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post