Heim >Java >javaLernprogramm >Wie sortiere ich ein 2D-Array nach seiner ersten Spalte in Java?
Sortieren eines 2D-Arrays nach der ersten Spalte mit Javas Arrays.sort
In Java wird ein 2D-Array basierend auf den Werten der sortiert Die erste Spalte kann mithilfe der überladenen Arrays.sort-Methode erreicht werden, die einen Comparator als zweites Argument verwendet. Mit diesem Komparator können Sie eine benutzerdefinierte Vergleichslogik zum Sortieren der Array-Elemente angeben.
Um ein 2D-Array anhand der Werte der ersten Spalte zu sortieren, können Sie die folgenden Schritte ausführen:
Erstellen Sie eine Komparator-Implementierung vergleicht die ersten Elemente der Subarrays. Dies kann mit der Double.compare-Methode zum Vergleichen von Double-Werten erfolgen:
Comparator<double[]> comparator = (a, b) -> Double.compare(a[0], b[0]);
Rufen Sie die Arrays.sort-Methode mit dem Array und dem Comparator als Argumente auf:
Arrays.sort(array, comparator);
Alternativ: Wenn Sie Java 8 oder höher verwenden, können Sie eine Lambda-Funktion verwenden, um das zu vereinfachen Komparator:
Arrays.sort(array, Comparator.comparingDouble(a -> a[0]));
Beispiel:
Betrachten Sie das folgende 2D-Array myArr:
double[][] myArr = { {1, 5}, {13, 1.55}, {12, 100.6}, {12.1, .85} };
Nachdem Sie myArr mit dem oben beschriebenen Ansatz sortiert haben, Es wird basierend auf den Werten der ersten Spalte sortiert:
1 5 12 100.6 12.1 .85 13 1.55
Das obige ist der detaillierte Inhalt vonWie sortiere ich ein 2D-Array nach seiner ersten Spalte in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!