Maison > Java > javaDidacticiel > Comment trier un tableau bidimensionnel par horodatage en Java ?

Comment trier un tableau bidimensionnel par horodatage en Java ?

Patricia Arquette
Libérer: 2024-11-03 12:49:03
original
627 Les gens l'ont consulté

How to Sort a Two-Dimensional Array by Timestamp in Java?

Tri d'un tableau bidimensionnel par une colonne

En Java, trier un tableau bidimensionnel en fonction d'une colonne spécifique est une pratique courante tâche qui nécessite une compréhension des manipulations de tableaux et des techniques de tri.

Énoncé du problème :

Étant donné un tableau bidimensionnel contenant des données, où la première colonne représente un horodatage et la deuxième colonne est une chaîne, l'objectif est de trier le tableau par ordre croissant en fonction des horodatages de la première colonne.

Détails de mise en œuvre :

Pour trier efficacement le tableau, nous utilisons la méthode Arrays.sort(), qui est très efficace pour trier les tableaux en Java. Pour les critères de tri, nous définissons une implémentation de Comparator personnalisée qui compare les horodatages dans la première colonne des éléments du tableau.

<code class="java">class TimestampComparator implements Comparator<String[]> {
  @Override
  public int compare(String[] a, String[] b) {
    return a[0].compareTo(b[0]);
  }
}</code>
Copier après la connexion

Dans la méthode principale, nous créons un tableau bidimensionnel, l'initialisons avec des données , puis triez-le à l'aide du comparateur personnalisé :

<code class="java">String[][] data = {...};
Arrays.sort(data, new TimestampComparator());</code>
Copier après la connexion

Extrait de code :

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

public class ArraySorter {

  public static void main(String[] args) {
    String[][] data = {...};
    Arrays.sort(data, new Comparator<String[]>() {
      @Override
      public int compare(String[] a, String[] b) {
        return a[0].compareTo(b[0]);
      }
    });
    for (String[] row : data) {
      System.out.println(row[0] + " " + row[1]);
    }
  }
}</code>
Copier après la connexion

Sortie :

Le tableau trié sera imprimé au format :

timestamp message
Copier après la connexion

où les horodatages sont classés par ordre chronologique croissant.

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal