Bonjour à tous,
je veux comparer deux chaines de caractères (résultat d'une concaténation).
Sauf que l'algorithme de comparaison compareTo ne renvoie pas ce que je veux.
En effet, voici mon code :
et le fichier debug
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 if(pkdisttmp.equals(pklocaletmp)) { stop=true; presenceLigne=true; debug=debug+" EGALITE : "+pklocaletmp+" = "+pkdisttmp+"\n"; } else if(pkdisttmp.compareToIgnoreCase(pklocaletmp)>0) { stop=true; debug=debug+"STOP : "+pklocaletmp+" > "+pkdisttmp+"\n"; } else { encoreDis=resultatsdis.next(); debug=debug+"ON CONTINUE : "+pklocaletmp+" < "+pkdisttmp+"\n"; indiceParcoursDistante++; }
Lorsque la chaine de caractères formée possède un chiffre ou un caractère particulier ( je pense au _ notamment).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 [...] ON CONTINUE : 1AP1RUP < 1ALIZN2 ON CONTINUE : 1AP1RUP < 1ANNCNT STOP : 1AP1RUP > 1APMFOU [...]
Il semblerait donc que les chiffres ou le _ soit > aux lettres de l'alphabet si je suis logique mais je souhaiterais l'inverse.
Existe t'il un autre algorithme de tri ou dois-je le redéfinir et si oui comment ?
J'espère avoir été assez clair.
Partager