"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo ordenar una matriz 2D en Java usando matrices.

¿Cómo ordenar una matriz 2D en Java usando matrices.

Publicado el 2025-02-07
Navegar:535

How to Sort a 2D Array in Java Using Arrays.sort and Comparators?

clasificando matrices 2D en Java usando Arrays.sort

una forma de ordenar una matriz 2D basada en los valores de sin implementar su propia clasificación El algoritmo es usar las matrices sobrecargadas#sort (t [] a, comparador c) método.

double[][] array = {
        {1, 5},
        {13, 1.55},
        {12, 100.6},
        {12.1, .85}
};

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

Este método toma un comparador como su segundo argumento, lo que le permite definir sus propios criterios de clasificación. En este caso, el comparador que hemos proporcionado compara el primer elemento de cada matriz doble [] y devuelve un entero que indica si es menor que, mayor o igual a 0.

usando funciones lambda En Java 8

Java 8 presenta funciones lambda, que proporcionan una forma concisa de definir los comparadores. Podemos reescribir el código anterior usando una función lambda de la siguiente manera:

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

esta función lambda toma una Double [] matriz como entrada y devuelve el valor del primer elemento como un doble. Al clasificar la matriz usando este comparador, logramos el resultado deseado.

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3