„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie sortiere ich ein 2D -Array in Java nach den Werten in der ersten Spalte?

Wie sortiere ich ein 2D -Array in Java nach den Werten in der ersten Spalte?

Gepostet am 2025-03-23
Durchsuche:303

How to Sort a 2D Array in Java by the Values in the First Column?

Sorting 2D Array based on First Column Values ​​using Java Arrays.sort

In Java, sorting a 2D array based on the values ​​of a specific column can be achieved using the overloaded Arrays.sort(T[] a, Comparator c) method that accepts a Comparator as its second Argument.

Betrachten Sie das folgende Beispiel, in dem wir ein 2D -Array Myarr haben, das Paare von Doppel enthält:

double[][] myArr = new double[mySize][2];
// populate myArr with data

um dieses Array basierend auf den ersten Spaltenwerten zu sortieren. Wir können mit der Vergleichsschnittstelle eine benutzerdefinierte Vergleichsregel definieren:

java.util.Comparator comparator = new java.util.Comparator() {
    public int compare(double[] a, double[] b) {
        return Double.compare(a[0], b[0]);
    }
};

wir können diesen Komparator dann an die Arrays.sort -Methode übergeben:

java.util.Arrays.sort(myArr, comparator);

Alternativ in Java 8 oder später können wir eine Lambda -Funktion anstelle der anonymous Inner -Klasse für die anonymous inner für die anonymous für die für die für die für die für die für die anonymous für die für die für die für die für die für die für die verwenden, um für die anonymous für die für die anonymous für die für die zu verwenden, für die für die anonymous für die für die anonym für die für die für die anonymous for the für die Vergleicher:

Arrays.sort(myArr, Comparator.comparingDouble(o -> o[0]));

Nach dem Sortieren wird der Myarr basierend auf den Werten in der ersten Spalte sortiert. Das Ergebnis wird sein:

[
  {1.0, 5.0},
  {12.0, 100.6},
  {12.1, 0.85},
  {13.0, 1.55}
]
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3