Comparaison de chaine de caractères / Question à la con - Java - Programmation
Marsh Posté le 29-03-2010 à 22:31:30
Moi j'me méfierais à ta place:
Code :
|
Code :
|
L'explication c'est que ca compare bien la référence comme tu dis. Dans le premier cas, c'est probablement la JVM qui gère sa tambouille et se retrouve à mettre la meme référence, à vue de nez pour des raisons d'optimisation j'dirais. Maintenant, tu peux pas etre sur que ca soit consistant entre JVMs, et puis bon dès que tes Strings viennent d'ailleurs voilà quoi...
Marsh Posté le 29-03-2010 à 22:43:55
m'ouais possible
bon ben je vais faire de l'écrasement de code
les gens en entreprise c'est de la folie "ben si t'as vu ça marche" sans chercher à comprendre
Marsh Posté le 29-03-2010 à 23:07:19
D'accord, merci
Marsh Posté le 29-03-2010 à 22:22:17
Voilà en bossant je me suis retrouvé nez à nez avec des tests genre:
pour tester la valeur d'une chaine de caractères (string)
Or pour moi on doit toujours utiliser la méthode equals(), le == faisant une comparaison des références des objets.
Par curiosité (avant d'écraser le code trouvé sur le projet ) j'ai fait le test suivant:
Qui me retourne "bien": false puis true.
Autrement dit ça a l'air de fonctionner quand une des opérandes est
une chaine en durconstanteQuelqu'un aurait une explication la dessus ?
---------------
"Tant qu'il y aura des hommes il y aura de comptoirs"