Pb de comparaison java

id000 Messages postés 23 Date d'inscription jeudi 7 février 2008 Statut Membre Dernière intervention 2 juin 2009 - 19 févr. 2008 à 22:18
cs_corsica Messages postés 147 Date d'inscription lundi 13 mai 2002 Statut Membre Dernière intervention 15 février 2010 - 20 févr. 2008 à 18:36
salut,
je veut faire cette comparaison en java:
for(i=0;i<texte.length();i++)
{
if(txt.charAt(i).equals(car.getText()))
{....}
avec caractere est un JTextField
lorsque je le compile il m'affiche:


FenetrePrincipal.java:73: char cannot be dereferenced


if ((txt.charAt(i)).equals(car.getText())){
SVP je suit un debutant en java ...j'essay de l'apprendre aide mois

4 réponses

cs_corsica Messages postés 147 Date d'inscription lundi 13 mai 2002 Statut Membre Dernière intervention 15 février 2010
19 févr. 2008 à 22:34
Tu ne peux pas comparer un type Char avec un type String.
charAt renvoit un type char et ton getText renvoit un type String donc tu as des typages différents. Java est très strict concernant le typage des données.
Apparement tu veux comparer des String mais caractéres par caractéres, je te conseille de passer par :
texte.substring( position , longueur )

<hr />
Life is Too Short ...
Enjoy Your Life ...
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
20 févr. 2008 à 06:51
Salut,

Et puis une remarque au passage :

for(i=0;i<texte.length();i++)
{
if(txt.charAt(i).equals(car.getText()))

Quel est le rapport avec "texte" et "txt" ? soit c'est l'abus du langage SMS qui t'a poussé à écrire txt sur le forum, soit il faut consulter :p
______________________________________
DarK Sidious
0
id000 Messages postés 23 Date d'inscription jeudi 7 février 2008 Statut Membre Dernière intervention 2 juin 2009
20 févr. 2008 à 08:28
c'est une erreur de saisi je vous remercie
0
cs_corsica Messages postés 147 Date d'inscription lundi 13 mai 2002 Statut Membre Dernière intervention 15 février 2010
20 févr. 2008 à 18:36
Pareil avec :




<hr />
if(txt.charAt(i).equals(car.getText()))
{....}
avec caractere est un JTextField


<hr />


Mais nous avions fait le lien ;-)





Sinon si tu cherches la position du caractére car dans texte tu peux faire ça aussi :

int position = texte.indexof( car )

position sera égale à -1 si car n'existe pas dans texte sinon tu auras sa position dans texte

Explication : IndexOf




<hr />


Life is Too Short ...
Enjoy Your Life ...







 
0
Rejoignez-nous