Probleme code java

Fermé
kml1191 Messages postés 53 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 23 octobre 2009 - 26 nov. 2007 à 00:41
 Utilisateur anonyme - 28 nov. 2007 à 02:39
Bonjour,
jai un probleme avec la ligne if dans le code suivant

String reponse=Lire.chaine();
String reponse1="oui";
String reponse2="non";
if (reponse==reponse1)

jutilise netbeans et g un carré jaune avec un point dexclamation a linterieur a gauche et kan je clik dessus g le message suivant

compating String using == or !=

kan je compil tt se passe bien mais kan je choisi la reponse ki permet au contenu du if de safficher il ne va pas plus loin il sarrete et fait comme si yavait pas dutt de if

merci davance pour voaide euh et merci si vs pouvez corriger si ya bien une erreur
A voir également:

11 réponses

Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
26 nov. 2007 à 00:45
Bonjour,

Essais :

If (reponse.equals(reponse1)= true) ...

;o)

Polux
0
kml1191 Messages postés 53 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 23 octobre 2009 3
26 nov. 2007 à 00:56
g essayé

euh g pire il me dit qu'il ya une erreur

sinon c koi lerreur dans ce ke g ecri

je veu tt simplement ke mon programme pose une kest et ke la personne repond oui ou non et le programme affich la saisi et en fonction de sa il passe dans le if ou pas
0
Utilisateur anonyme
26 nov. 2007 à 09:59
Salut !...

Remplacer if (reponse.equals(reponse1)= true) )
par if (reponse.equals("oui"))
{
----
}
else ----
0
kml1191 Messages postés 53 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 23 octobre 2009 3
27 nov. 2007 à 11:50
cette fois ci tt fonctionne merci pour votre aide

par contre g encore deux question

c'etait koi l'erreur dans ce ke javais fais ?

cad=====> String reponse=Lire.chaine();
String reponse1="oui";
String reponse2="non";
if (reponse==reponse1)

dans ça==> if (reponse.equals("oui")) que signifi equals ?


pkoi avec equals tt fonction kan je mé == ca fonctionne pas ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Mycki Messages postés 113 Date d'inscription jeudi 8 novembre 2007 Statut Membre Dernière intervention 17 décembre 2007 46
27 nov. 2007 à 12:03
Le truc, c'est que .equals() te compare deux chaines de caractères : celle qui est avant ton .equals et celle entre parenthèses. Si tu veux, tu pourrais remplacer la chaine de caractère "oui", par ta variable qui contient "oui". Aussi, le problème que tu avais était lié au fait que tu mettais un booléen dans ton if qui n'était pas syntaxiquement correct, enfin je pense (j'en suis pas sur...)

Quand tu mets if( reponse.equals("oui") ) c'est comme si ce qui était entre parenthèses était à true. Pour avoir false il te suffit de faire ca : if( !reponse.equals("oui") ).

Voila, j'espere t'avoir aidé ;)
0
kml1191 Messages postés 53 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 23 octobre 2009 3
27 nov. 2007 à 12:17
Merci pour ta reponse ^^ c'est bcp plus clair

g just une derniere question par rapport à ce que ta dis

equal ser a comparer les chaines de cractere et rien d'autre donc pas de int pas de double et pas autre chose c'est bien ca ?
0
Mycki Messages postés 113 Date d'inscription jeudi 8 novembre 2007 Statut Membre Dernière intervention 17 décembre 2007 46
27 nov. 2007 à 12:26
C'est ca...
0
tarek_dotzero Messages postés 817 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 12 avril 2022 122
27 nov. 2007 à 13:20
Salut,

Pour plus de detailles seulement:

les int et double ne sont pas des vrais objets, se sont des instances de "primitives "et non pas de classes!
Toutes les instances de primitives (même primitives) peuvent être comparrées à l'aide de "==".

String est une classe, ce qui rend toutes les chaines de caractères des objets.

la methode equals est déclarer même dans la classe racine "object", c'est une méthode qui renvoit un booléen.
0
Mycki Messages postés 113 Date d'inscription jeudi 8 novembre 2007 Statut Membre Dernière intervention 17 décembre 2007 46
27 nov. 2007 à 14:02
Je n'aurais pas dit mieux :) Surtout que j'avais complètement oublié :p

Donc en gros, avec un .equals tu peux comparer deux variables qui ont pout type des classes. Genre String ou Integer. Pour les types de base, comme l'a dit tarek_dotzero, c'est avec ==.
0
kml1191 Messages postés 53 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 23 octobre 2009 3
27 nov. 2007 à 19:18
merci pour tte ces infos ^_^

ca ma aidé pour avancé

@ bientot
0
Utilisateur anonyme
28 nov. 2007 à 02:39
Ajoutons que bien entendu on peut aussi ecrire :
if (reponse.equals(reponse1)) // pour tester "oui"
ou if (reponse.equals(reponse2)) // pour tester "non"
{
----
}
else ----

24 message(s) posté(s) depuis le dimanche 15 janvier 2006
0