Maison > Java > javaDidacticiel > Comment trier un tableau bidimensionnel en Java en fonction d'une colonne spécifique ?

Comment trier un tableau bidimensionnel en Java en fonction d'une colonne spécifique ?

DDD
Libérer: 2024-11-03 09:58:29
original
702 Les gens l'ont consulté

How to Sort a Two-Dimensional Array in Java Based on a Specific Column?

Tri d'un tableau bidimensionnel basé sur une colonne spécifique

En Java, trier un tableau bidimensionnel basé sur une colonne spécifique implique organiser les données par ordre croissant ou décroissant selon les valeurs de la colonne choisie. Cette tâche est particulièrement utile pour organiser des ensembles de données complexes et faciliter une récupération efficace des informations.

Pour trier avec succès un tableau bidimensionnel, il faut prendre en compte le type de données dans la colonne spécifiée et implémenter l'algorithme de tri approprié. Par exemple, dans l'exemple donné, la première colonne contient des dates au format "aaaa.MM.jj HH:mm", indiquant que le type de données est une chaîne.

Le code suivant montre comment trier un tableau de chaînes bidimensionnel basé sur la première colonne :

<code class="java">import java.util.Arrays;
import java.util.Comparator;

public class Sort2DArray {

    public static void main(String[] args) {
        // Sample two-dimensional array
        String[][] data = {
            {"2009.07.25 20:24", "Message A"},
            {"2009.07.25 20:17", "Message G"},
            {"2009.07.25 20:25", "Message B"},
            {"2009.07.25 20:30", "Message D"},
            {"2009.07.25 20:01", "Message F"},
            {"2009.07.25 21:08", "Message E"},
            {"2009.07.25 19:54", "Message R"}
        };

        // Comparator for sorting based on the first column (date)
        Comparator<String[]> dateComparator = (entry1, entry2) -> {
            String time1 = entry1[0];
            String time2 = entry2[0];
            return time1.compareTo(time2);
        };

        // Sort the array using the comparator
        Arrays.sort(data, dateComparator);

        // Print the sorted array
        for (String[] s : data) {
            System.out.println(s[0] + " " + s[1]);
        }
    }
}</code>
Copier après la connexion

Sortie :

2009.07.25 19:54 Message R
2009.07.25 20:01 Message F
2009.07.25 20:17 Message G
2009.07.25 20:24 Message A
2009.07.25 20:25 Message B
2009.07.25 20:30 Message D
2009.07.25 21:08 Message E
Copier après la connexion

Le code utilise Arrays.sort() et un comparateur personnalisé pour comparer et trier les éléments dans le tableau. En définissant un comparateur qui se concentre sur la première colonne, nous pouvons obtenir le tri souhaité par colonne.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal