String.equals(String) ne fonctionne pas...
Résolu
moi411
Messages postés
45
Date d'inscription
Statut
Membre
Dernière intervention
-
moi411 Messages postés 45 Date d'inscription Statut Membre Dernière intervention -
moi411 Messages postés 45 Date d'inscription Statut Membre Dernière intervention -
Bonsoir,
Comme dit dans le titre, j'ai 2 chaines de caractères que je dois comparer.
J'utilise:
if(a.equals(b)){ ... }
Pour le test, a est identaique à b mais je ne rentre quand-même pas dans le "if"!
Merci d'avance et bonne soirée!
--
Comme dit dans le titre, j'ai 2 chaines de caractères que je dois comparer.
J'utilise:
if(a.equals(b)){ ... }
Pour le test, a est identaique à b mais je ne rentre quand-même pas dans le "if"!
Merci d'avance et bonne soirée!
--
A voir également:
- Object of class doctrine orm persistentcollection could not be converted to string
- Qwerty to azerty - Guide
- Could not connect to server iptv - Forum TV & Vidéo
- Press del to enter setup ✓ - Forum Windows
- Your browser sent a request that this server could not understand. size of a request header field exceeds server limit. ✓ - Forum Réseaux sociaux
- Could not locate efi boot bootx64.efi - Forum Windows 10
3 réponses
Bonjour,
L'erreur est forcément ailleurs, il faudrait voir le code complet.
Tu devrais aussi afficher
L'erreur est forcément ailleurs, il faudrait voir le code complet.
Tu devrais aussi afficher
aet
bpour voir quelles sont les différences :
System.out.println(java.util.Arrays.toString(a.getBytes())); System.out.println(java.util.Arrays.toString(b.getBytes()));La confiance n'exclut pas le contrôle
Ré,
En fait j'ai un fichier avec des dates et des tarifs.
Je compare les dates et les tarifs après lecture du fichier (tout ça au format String).
Pour les dates, aucun problème mais pour les tarifs, ça déconne!
J'ai bien les mêmes chaînes (les affichages sont identiques et de même taille) et tout est bien dans un format String ; Je fais les éventuelles conversions par après !
La condition: if(a.equals(b) && c.equals(d))
Et merci de ta réponse!--
En fait j'ai un fichier avec des dates et des tarifs.
Je compare les dates et les tarifs après lecture du fichier (tout ça au format String).
Pour les dates, aucun problème mais pour les tarifs, ça déconne!
J'ai bien les mêmes chaînes (les affichages sont identiques et de même taille) et tout est bien dans un format String ; Je fais les éventuelles conversions par après !
La condition: if(a.equals(b) && c.equals(d))
Et merci de ta réponse!--
"les affichages sont identiques et de même taille"
L'affichage ne compte pas seul l'encodage compte, d'où l'intérêt de l'affichage de getBytes(), tu peux par exemple avoir des espaces différents (space et nbsp) indifférentiables "à la vue".
Alors affiches le tableau d'octets avec le code que j'ai fourni ci-dessus pour chaque couple de String que tu compares. Mais en aucun cas ce n'est la méthode equals qui est fausse...
L'affichage ne compte pas seul l'encodage compte, d'où l'intérêt de l'affichage de getBytes(), tu peux par exemple avoir des espaces différents (space et nbsp) indifférentiables "à la vue".
Alors affiches le tableau d'octets avec le code que j'ai fourni ci-dessus pour chaque couple de String que tu compares. Mais en aucun cas ce n'est la méthode equals qui est fausse...