Maison >Java >javaDidacticiel >Collection.Sort () en Java avec des exemples

Collection.Sort () en Java avec des exemples

Patricia Arquette
Patricia Arquetteoriginal
2025-02-07 11:29:13253parcourir

Collections.sort() in Java with Examples

Cet article explore la méthode Collections.sort() en Java, un outil puissant pour trier les éléments dans des collections comme les listes et les tableaux. Bien qu'un TreeSet puisse également trier les éléments, Collections.sort() offre de la flexibilité et de l'efficacité, en particulier lorsqu'il s'agit de listes et d'autres types de collection. Situé dans la classe java.util.Collections, cette méthode trie principalement des éléments dans l'ordre croissant. Il s'agit d'une amélioration par rapport à java.util.Arrays.sort(), capable de gérer divers types de collection, y compris des listes et des files d'attente liées.

illustrons avec un exemple:

Considérons une liste contenant ces chaînes:

<code>{"TutorialsPoint", "Friends", "Dear", "Is", "The", "Best", "Hey"}</code>

Après avoir appliqué Collections.sort(), la liste devient:

<code>{"Dear", "Best", "Friends", "Hey", "Is", "The", "TutorialsPoint"}</code>

Plusieurs méthodes facilitent le tri:

  • public void sort(List list) : Trie les éléments d'une liste. Surtout, les éléments doivent implémenter l'interface Comparable. Cela fonctionne bien avec les chaînes et les classes d'emballage (comme Integer).

  • sort(List list, Comparator c) : Trie une liste à l'aide d'une personnalité Comparator pour définir l'ordre de tri.

Algorithme pour utiliser Collections.sort()

Cet algorithme décrit les étapes à utiliser Collections.sort() dans un programme Java:

  1. Démarrer: commencer le processus.
  2. Importer des packages: Importer les packages Java nécessaires (par exemple, java.util.*).
  3. Déclarer la classe: Définir une classe publique.
  4. Structure de données: Créer un List (par exemple, ArrayList).
  5. Liste de remplissage: Ajouter des éléments de données à la liste.
  6. Trier: Utilisez Collections.sort() pour trier la liste.
  7. Imprimer: Afficher la liste triée.
  8. fin: terminer le processus.

Exemples de syntaxe

Les extraits de code suivants démontrent Collections.sort() Utilisation:

Exemple 1 (tri une liste d'objets personnalisés):

<code class="language-java">class Fruit implements Comparable<fruit> {
    int id;
    String name, taste;

    Fruit(int id, String name, String taste) {
        this.id = id;
        this.name = name;
        this.taste = taste;
    }

    @Override
    public int compareTo(Fruit f) {
        return this.id - f.id;
    }

    // Getters for id, name, and taste
    public int getId() { return id; }
    public String getName() { return name; }
    public String getTaste() { return taste; }
}

// ... (rest of the code to create and sort a list of Fruit objects) ...</fruit></code>

Exemple 2 (tri une liste des entiers):

<code class="language-java">ArrayList<integer> al = new ArrayList<>();
al.add(201);
al.add(101);
al.add(230);
Collections.sort(al); // Sorts in ascending order</integer></code>

approche

Cet article présente deux approches:

Approche 1: démonstration Collections.sort()

Cette approche montre comment trier un ArrayList dans l'ordre croissant. La complexité temporelle est O (n log n), et l'espace auxiliaire est o (1).

Approche 2: Tri avec un Comparator

Cette approche démontre le tri personnalisé à l'aide d'une interface Comparator, permettant des critères de tri définis par l'utilisateur. Des exemples montrent le tri Student objets par numéro de rouleau.

Comparaison des performances (arrays.sort () vs collections.sort ())

Une comparaison des performances Arrays.sort() et Collections.sort() est incluse, mettant en évidence les légères différences de performances en fonction de la taille et du type des données.

En conclusion, Collections.sort() fournit un moyen polyvalent et efficace de trier diverses collections Java, offrant à la fois des capacités de tri et de tri personnalisés par défaut via des comparateurs. Le choix entre Arrays.sort() et Collections.sort() dépend de la structure de données spécifique et des exigences de performance.

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!

Déclaration:
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