Collections.sort

Le
Cenekemoi
Bonjour,

après quelques recherches infructueuses (il est vrai que je suis
lamentable en anglais), je n'ai pas réussi à avoir la réponse à cette
question:

Soit :

<code>
java.util.Comparator c = new java.util.Comparator() {
public int compare(Object o1, Object o2) {
try {
if (test1) return 1
else
if (test2) return -1
else
return 0;
} catch (Exception ignore) {
}
return 0;
}
};

Collections.sort(tab, c);
</code>

"tab" est une array mais peu importe.

Mon interrogation est celle-ci: est-ce que le "return 0" dans une
fonction "Comparator" *garantit* que l'ordre initial soit conservé ?

(c'est le cas en JavaScript d'après la doc que j'ai trouvée)

Merci d'avance pour vos lumières

--
Cordialement, Thierry ;-)
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Mayeul
Le #20686411
Cenekemoi wrote:
Mon interrogation est celle-ci: est-ce que le "return 0" dans une
fonction "Comparator" *garantit* que l'ordre initial soit conservé ?

(c'est le cas en JavaScript d'après la doc que j'ai trouvée)



Effectivement il va falloir bosser l'anglais :).

Trouvé directement dans la JavaDoc de
Collections.sort(List, Comparator):

This sort is guaranteed to be /stable/: equal elements will not be
reordered as a result of the sort.

Qui se traduit grosso-modo par :

Ce tri est garanti /stable/ (euh... C'est quoi le terme français
correct?) : l'ordre des éléments égaux ne sera pas changé par le tri.

--
Mayeul
Cenekemoi
Le #20686501
"Mayeul" news:4b17d2f4$0$30625$
Cenekemoi wrote:
Mon interrogation est celle-ci: est-ce que le "return 0" dans une
fonction "Comparator" *garantit* que l'ordre initial soit conservé ?

(c'est le cas en JavaScript d'après la doc que j'ai trouvée)



Effectivement il va falloir bosser l'anglais :).



Caramba, ye suis démasqué !...

Trouvé directement dans la JavaDoc de
Collections.sort(List, Comparator):

This sort is guaranteed to be /stable/: equal elements will not be
reordered as a result of the sort.



Ben oui c'est évident, et pourtant je l'ai lu mais je pense comprendre
mon erreur: je me suis surtout approfondi sur le JavaDoc de l'interface
"java.util.Comparator" où n'apparait pas une phrase si compréhensible
pour moi...

Qui se traduit grosso-modo par :

Ce tri est garanti /stable/ (euh... C'est quoi le terme français
correct?) : l'ordre des éléments égaux ne sera pas changé par le tri.



Merci pour la traduction mais j'avais résussi à comprendre tout seul
(YYYYEEESS !!!...) la phrase citée ci-dessus.

--
Cordialement, Thierry ;-)
steph
Le #20905471
Cenekemoi wrote:
"Mayeul" news:4b17d2f4$0$30625$
Cenekemoi wrote:
Mon interrogation est celle-ci: est-ce que le "return 0" dans une
fonction "Comparator" *garantit* que l'ordre initial soit conservé ?

(c'est le cas en JavaScript d'après la doc que j'ai trouvée)



Effectivement il va falloir bosser l'anglais :).



Caramba, ye suis démasqué !...

Trouvé directement dans la JavaDoc de
Collections.sort(List, Comparator):

This sort is guaranteed to be /stable/: equal elements will not be
reordered as a result of the sort.



Ben oui c'est évident, et pourtant je l'ai lu mais je pense comprendre
mon erreur: je me suis surtout approfondi sur le JavaDoc de l'interface
"java.util.Comparator" où n'apparait pas une phrase si compréhensible
pour moi...



Normal, ce n'est pas le Comparator qui te garantie la stabilité du tri
mais bien l'utilisation qui en est fait dans Collections.sort().


Qui se traduit grosso-modo par :

Ce tri est garanti /stable/ (euh... C'est quoi le terme français
correct?) : l'ordre des éléments égaux ne sera pas changé par le tri.



Merci pour la traduction mais j'avais résussi à comprendre tout seul
(YYYYEEESS !!!...) la phrase citée ci-dessus.



steph
Le #20905461
Cenekemoi wrote:
"Mayeul" news:4b17d2f4$0$30625$
Cenekemoi wrote:
Mon interrogation est celle-ci: est-ce que le "return 0" dans une
fonction "Comparator" *garantit* que l'ordre initial soit conservé ?

(c'est le cas en JavaScript d'après la doc que j'ai trouvée)



Effectivement il va falloir bosser l'anglais :).



Caramba, ye suis démasqué !...

Trouvé directement dans la JavaDoc de
Collections.sort(List, Comparator):

This sort is guaranteed to be /stable/: equal elements will not be
reordered as a result of the sort.



Ben oui c'est évident, et pourtant je l'ai lu mais je pense comprendre
mon erreur: je me suis surtout approfondi sur le JavaDoc de l'interface
"java.util.Comparator" où n'apparait pas une phrase si compréhensible
pour moi...



Normal, ce n'est pas le Comparator qui te garantie la stabilité du tri
mais bien l'utilisation qui en est fait dans Collections.sort().


Qui se traduit grosso-modo par :

Ce tri est garanti /stable/ (euh... C'est quoi le terme français
correct?) : l'ordre des éléments égaux ne sera pas changé par le tri.



Merci pour la traduction mais j'avais résussi à comprendre tout seul
(YYYYEEESS !!!...) la phrase citée ci-dessus.



Publicité
Poster une réponse
Anonyme