Maison  >  Article  >  Java  >  La différence entre comparable et comparateur en Java

La différence entre comparable et comparateur en Java

王林
王林avant
2019-12-24 17:47:542595parcourir

La différence entre comparable et comparateur en Java

La détermination de la relation de taille et de l'ordre de disposition entre deux objets est appelée comparaison. La classe ou la méthode qui peut implémenter cette fonction de comparaison est appelée comparateur. Il existe deux comparaisons dans un appareil Java.

Comparateur interne (interface Comparable) et comparateur externe (interface Comparateur)

1. L'utilisation du tri des comparateurs Comparator - peut être considéré comme une classe (objet) Externe. comparateur (implémente l'interface Comparator).

Pour faire simple, écrire le comparateur en dehors du cours, c'est vrai ! Définissez simplement une nouvelle classe de comparaison à l'extérieur !

Définissez une nouvelle classe. Le nom de la classe est arbitraire, mais cette classe doit implémenter l'interface Comparator et remplacer la méthode de comparaison. Nous appelons cela un comparateur externe.

Cas : stockez les objets étudiants et parcourez, créez une collection TreeSet en utilisant la méthode de construction paramétrée.

Exigences : Trier par âge du plus jeune au plus âgé. Si les âges sont les mêmes, trier par nom par ordre alphabétique.

Tutoriels vidéo d'apprentissage gratuits recommandés : Vidéo d'enseignement Java

Étapes de mise en œuvre : utilisez la collection TreeSet pour stocker des objets personnalisés, et la méthode de construction paramétrée utilise un comparateur pour trier les Le tri du comparateur d'éléments pour le tri consiste à laisser la méthode de construction de collection recevoir l'objet de classe d'implémentation de Comparator. Lors de la réécriture de la méthode compare(Student s1, Student s2), vous devez faire attention aux règles de tri qui doivent être conformes aux règles primaires requises. et conditions secondaires. Écrivons

1 Catégorie étudiant

La différence entre comparable et comparateur en Java

2. 2. Tri naturel L'utilisation du comparateur interne de classe (objet) Comparable (implémentant l'interface Comparable) :

Pour faire simple, le comparateur est écrit à l'intérieur de la classe. La différence entre comparable et comparateur en Java

La classe (objet) implémente l'interface Comparable, puis remplace la méthode compareTo (cette méthode peut être considérée comme un comparateur). Cette classe a un comparateur interne. Notez qu'une fois que vous avez implémenté le comparateur, cela signifie que cette classe prend en charge le tri

Étapes d'implémentation :

Utilisez la collection TreeSet pour stocker des objets personnalisés, sans méthode de construction de paramètres, en utilisant le tri naturel des éléments triés.

Le tri naturel signifie que la classe à laquelle appartient l'élément implémente l'interface Comparable et remplace la méthode compareTo(Student s)

Lors de la réécriture de la méthode, assurez-vous de noter que les règles de tri. doit être conforme aux conditions principales et secondaires requises.

1. Catégorie Étudiant

2. Catégorie Test

La différence entre comparable et comparateur en Java

Résultats des tests :

La différence entre comparable et comparateur en Java


Articles et tutoriels connexes recommandés :

Démarrer avec zéro base de Java

La différence entre comparable et comparateur en Java

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer