Les collections Java trient et trient

Les collections Java trient et trient
ArrayList et le vecteur sont chacun des exemples d'une liste en Java. Il existe d'autres types de listes. Une classe de collections a la méthode SORT () pour trier une liste dans l'ordre croissant. Il possède également la méthode inverse (), qui permet le tri dans l'ordre descendant (inverse). La méthode inverse n'est pas utilisée ordinairement. Il est utilisé comme argument dans l'une des méthodes surchargées (). La classe de collections est dans le java.user.* package, qui doit être importé par le programmeur à utiliser.

Considérez la liste des ensembles de personnes suivantes suivantes:

Enfants, garçons, groupes, filles, tantes, oncles, parents

Si cette liste est triée dans l'ordre croissant du dictionnaire, le résultat serait:

tantes, garçons, enfants, filles, groupes, parents, oncles

Si la liste est triée par ordre décroissant, le résultat serait:

oncles, parents, groupes, filles, enfants, garçons, tantes

Les syntaxes complètes pour les principales méthodes de tri des collections sont:

STATIQUE PUBLIQUE > Sort vide (liste liste)
et
STATIQUE PUBLIQUE Sort vide (liste Liste, comparateur c)

La syntaxe complète pour la méthode inverse est:

STATIQUE PUBLIQUE Comparateur ordre inverse()

La méthode inverse de commande () est utilisée avec la deuxième méthode ci-dessus. «Statique» signifie que la classe de collections n'a pas besoin d'être instanciée pour utiliser la méthode.

Le tableau normal peut également être trié. Les listes implémentées ont besoin de la classe de collections pour le tri. Le tableau a besoin de la classe des tableaux pour le tri. Les méthodes de tri de la classe des tableaux qui correspondent aux méthodes de tri ci-dessus sont:

Sort public de vide statique (objet [] a)
et
STATIQUE PUBLIQUE VOID SORT (T [] A, Comparateur c)

La même méthode inverse () est utilisée avec la deuxième méthode ici pour inverser.

La classe Arrays est également dans le java.user.* package, et doit être importé.

Trier par ordre croissant

La première forme des deux méthodes de tri surchargées ci-dessus est utilisée pour le tri par ordre croissant.

Tri ArrayList ascendant

La méthode de tri renvoie vide. Le programme suivant montre comment le ArrayList est trié, dans l'ordre croissant:

Importer Java.user.*
classe publique TheClass
public static void main (String [] args)
ArrayList al = new ArrayList ();
Al.ajouter ("enfants"); Al.Ajouter ("garçons"); Al.ajouter ("groupes"); Al.Ajouter ("filles");
Al.ajouter ("tantes"); Al.ajouter ("oncles"); Al.ajouter ("parents");
Collections.tri (al);
pour (int i = 0; iSystème.dehors.Imprimer (Al.obtenir (i)); Système.dehors.imprimer(");

Système.dehors.println ();

La sortie est:

tantes garçons enfants filles groupes parents oncles

Tri-vecteur ascendant

La méthode de tri renvoie vide. Le programme suivant montre comment le vecteur est trié, dans l'ordre croissant:

Importer Java.user.*
classe publique TheClass
public static void main (String [] args)
Vecteur v = nouveau vecteur ();
V.ajouter ("enfants"); V.Ajouter ("garçons"); V.ajouter ("groupes"); V.Ajouter ("filles");
V.ajouter ("tantes"); V.ajouter ("oncles"); V.ajouter ("parents");
Collections.tri (v);
pour (int i = 0; iSystème.dehors.Imprimer (V.obtenir (i)); Système.dehors.imprimer(");

Système.dehors.println ();

La sortie est:

tantes garçons enfants filles groupes parents oncles

Tri Type de tableau [] ascendant

La méthode de tri renvoie vide. Le programme suivant montre comment le tableau ordinaire est trié dans l'ordre croissant:

Importer Java.user.*
classe publique TheClass
public static void main (String [] args)
String [] arr = new String [] "Children", "Boys", "Groupes", "Girls", "Aunt", "Oncles", "Parents";
Tableaux.tri (arr);
pour (int i = 0; iSystème.dehors.print (arr [i]); Système.dehors.imprimer(");

Système.dehors.println ();

La sortie est:

tantes garçons enfants filles groupes parents oncles

Trier par ordre décroissant

Les collections et les tableaux sont en fait deux classes différentes. Les tableaux ont deux méthodes surchargées de tri (), similaires aux méthodes de collections surchargées (), indiquées ci-dessus. Pour les deux schémas de tri, la méthode inversée () de la classe de collecte renvoie un objet de comparateur, à utiliser comme deuxième argument, pour l'une des méthodes de tri, pour l'ordre descendant. La syntaxe à utiliser est:

Collections.ordre inverse()

Tri des descendants ArrayList descendant

La méthode de tri surchargée avec un deuxième argument est utilisée pour trier la descente. L'expression «Collections.inverseOrder () ”doit être utilisé pour le deuxième argument. Le programme suivant montre comment le ArrayList est trié, dans l'ordre descendant:

Importer Java.user.*
classe publique TheClass
public static void main (String [] args)
ArrayList al = new ArrayList ();
Al.ajouter ("enfants"); Al.Ajouter ("garçons"); Al.ajouter ("groupes"); Al.Ajouter ("filles");
Al.ajouter ("tantes"); Al.ajouter ("oncles"); Al.ajouter ("parents");
Collections.Trier (Al, collections.ordre inverse());
pour (int i = 0; iSystème.dehors.Imprimer (Al.obtenir (i)); Système.dehors.imprimer(");

Système.dehors.println ();

La sortie est:

Les parents groupes regroupent les filles, les enfants, les tantes garçons

Tri descendant le vecteur

La méthode de tri surchargée avec un deuxième argument est utilisée pour trier la descente. L'expression «Collections.inverseOrder () ”doit être utilisé pour le deuxième argument. Le programme suivant montre comment le vecteur est trié, dans l'ordre descendant:

Importer Java.user.*
classe publique TheClass
public static void main (String [] args)
Vecteur v = nouveau vecteur ();
V.ajouter ("enfants"); V.Ajouter ("garçons"); V.ajouter ("groupes"); V.Ajouter ("filles");
V.ajouter ("tantes"); V.ajouter ("oncles"); V.ajouter ("parents");
Collections.Trier (V, collections.ordre inverse());
pour (int i = 0; iSystème.dehors.Imprimer (V.obtenir (i)); Système.dehors.imprimer(");

Système.dehors.println ();

La sortie est:

Les parents groupes regroupent les filles, les enfants, les tantes garçons

Tri Type de tableau [] Descendant

La méthode de tri surchargée pour les tableaux, avec un deuxième argument, est utilisée pour trier descendant. L'expression «Collections.inverseOrder () ”doit être utilisé pour le deuxième argument. Le programme suivant montre comment le tableau ordinaire est trié, par ordre décroissant:

Importer Java.user.*
classe publique TheClass
public static void main (String [] args)
String [] arr = new String [] "Children", "Boys", "Groupes", "Girls", "Aunt", "Oncles", "Parents";
Tableaux.Trier (Arr, Collections.ordre inverse());
pour (int i = 0; iSystème.dehors.print (arr [i]); Système.dehors.imprimer(");

Système.dehors.println ();

La sortie est:

Les parents groupes regroupent les filles, les enfants, les tantes garçons

Conclusion

ArrayList et le vecteur sont chacun des exemples d'une liste en Java. Il existe d'autres types de listes. Une classe de collections a la méthode SORT () pour trier une liste dans l'ordre croissant. Il possède également la méthode inverse (), qui permet le tri dans l'ordre descendant (inverse). La méthode inverse n'est pas utilisée de manière ordinaire. Il est utilisé comme argument dans l'une des méthodes surchargées (). La classe de collections est dans le java.user.* package, qui doit être importé par le programmeur à utiliser.

La classe Arrays a de nombreuses méthodes de tri surchargées. Deux d'entre eux sont:

Sort public de vide statique (objet [] a)
STATIQUE PUBLIQUE VOID SORT (T [] A, Comparateur c)

La classe de collections propose en conséquence deux méthodes de tri surchargées, qui sont:

STATIQUE PUBLIQUE > Sort vide (liste liste)
STATIQUE PUBLIQUE Sort vide (liste Liste, comparateur c)

La première méthode de la classe des tableaux trie un tableau d'objets, ascendant. La première méthode de la classe de collections trie une liste d'objets, ascendant. Pour trier descendant, les deux secondes méthodes ici sont configurées de la même manière, pour leurs deuxièmes arguments, je.e. Collections.ordre inverse().

Les exemples de liste prédéfinis Java sont ArrayList, AttributeList, LinkedList, Stack et Vector. Tableaux de trier les tableaux, tandis que les collections trie les listes.