Aide,debutant en java

id.prog Messages postés 57 Statut Membre -  
fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   -
salut,
je veut faire cette comparaison en java:
for(i=0;i<texte.length();i++)
{
if(txt.charAt(i).equals(car.getText()))
{....}
avec car est un JTextField
lorsque je le compile il m'affiche:

FenetrePrincipal.java:73: char cannot be dereferenced

if ((txt.charAt(i)).equals(car.getText())){
d'apres vous quel est le probleme,je suit un debutant en java,aide mois SVP
Configuration: Windows XP
Internet Explorer 6.0

3 réponses

  1. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
     
    Salut
    Pas besoin de boucle.
    txt.charAt(i) renvoie un caractère, et tu voulais le comparer à un mot, d'où le message d'erreur.
    Un simple if(txt.equals(car.getText())) ... suffira

    Cordialement
    0
  2. id.prog Messages postés 57 Statut Membre 20
     
    non je veut calculer le nombre d'occurance d'un caractere saisi dans le JTextField dans le texte,donc je veut decomposer le texte en caractere et faire la comparaison caractere par caractere
    0
  3. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
     
    Ah ok, au temps pour moi.
    char caractere = car.getText().charAt(0); //si le caractère est en première position
    for(i=0;i<texte.length();i++) {
        if(txt.charAt(i) == caractere)
          {....} 
    }
    

    Si tu veux vérifier tous les caractères du JTextField, alors il faudra faire un double For

    Cordialement
    0