J'ai des chaînes de caractère dans un TreeSet qui sont automatiquement triés naturellement et par ordre alphabétique, tel qu'un TreeSet se définit. Mais j'ai des majuscules dans mes chaines et je ne souhaite pas que la case soit respectée dans la mesure où l'implémentation de l'interface Comparable par la classe String ne respecte pas la case.
1) Je ne peux donc pas réécrire la méthode compare(), puisqu'il s'agit d'un tri naturel des String
2) Je ne peux non plus réécrire la méthode compareTo() puisque je ne pourrait même pas appliqué une méthode sort() sur un TreeSet.
Quelqu'un a -t-il une idée.
ILLUSTRATION
Le résultat produit par le code suivant est le [K, P, a, b, e, w] à cause de K et P qui sont en majuscule. Pourtant le résultant escompté est [a, b, e, K, P, w]
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 public class AffichageTrier { public static void main (String[] args) { Set noms = new TreeSet(); noms.add("a"); noms.add("e"); noms.add("b"); noms.add("w"); noms.add("P"); noms.add("K"); System.out.print(noms + " "); } }
Quelqu'un a-t-il une idée.
Partager