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 :
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++;
						}
et le fichier debug
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
[...]
Lorsque la chaine de caractères formée possède un chiffre ou un caractère particulier ( je pense au _ notamment).
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.