IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

Problème d'égalité de chaînes


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2016
    Messages : 6
    Par défaut Problème d'égalité de chaînes
    [NDM]Cette question a été initialement posée dans la discussion [Le Compte est bon] Algorithme de recherche de solutions.

    Bonsoir ,
    Désolé de revenir un peu en arrière mais j'aurais besoin d'aide si possible !
    Alors j'aurais besoin de savoir comment je pourrais récupérer les résultat un par un dans le tableau et les comparer à un résultat qu'aura introduit un joueur dans un JtextArea de façon à ce qu'il puisse jouer au lieu d'avoir directement la liste des résultats qui s'affiche

    Donc pour afficher les résultat vous avez utilisé ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
      if( Computing.start() ){
               System.out.println("Le compte est bon ( "+ Computing.getListeDesSolutions().size() +" solutions" +" ) \n ");
               for ( String resultat : Computing.getListeDesSolutions()){
                   System.out.println(resultat + "\n");
               }
           }
    Moi je voudrais comparer les valeurs d'un résultat une par une , et pour cela j'ai essayé ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     int x=0 ; 
           if( Computing.start() ){
     
              String   reslt= jTextArea2.getText() ;
     
               for ( String resultat : Computing.getListeDesSolutions()){
     
     
                   if (resultat==reslt){
                   x=1 ;
                   t.stop();
                   }if (x==1){ jTextArea2.setText( reslt1+"\n"+"le compte est bon !! vous avez trouvez l'une des "
                         + ""+Computing.getListeDesSolutions().size() +" Solutions  à :"+jLabel2.getText());
                 }
     
     
           }if (x==0) {
     
                 jTextArea2.setText("Le résultat est faux  !");
     
     
     
     
           }
    lorsque j’exécute il renvoie systématiquement que le résultat est faux , je pense qu'il y a une erreur dans la manière de faire appel aux éléments de la listes
    merci d'avance pour votre réponse

  2. #2
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Billets dans le blog
    2
    Par défaut
    Salut,

    Et bienvenue sur Developpez.

    Premièrement, on teste l'égalité de chaînes de caractères par equals(), non par ==, donc if (resultat.equals(reslt)). Sinon, c'est quoi exactement cette ligne dans ton code : t.stop();.
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2016
    Messages : 6
    Par défaut
    Merci c'est un plaisir !
    j'ai essayé avec .equals et ça ne marche toujours pas !!
    le t.stop signifie l'arrêt de mon chronomètre ! (pas important)

  4. #4
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Billets dans le blog
    2
    Par défaut
    Si tu ajoutes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.out.println(resultat+" "+reslt);
    juste avant la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (resultat.equals(reslt)){
    ça affiche quoi ?
    Il faut que le texte saisi dans le champ soit exactement le même que dans le résultat : pas le droit aux espaces supplémentaires, pas le droit à une casse différente, etc.
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  5. #5
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2016
    Messages : 6
    Par défaut
    Oui je copie exactement le même résultat que l'algorithme me donne et je prend soin de bien vérifier qu'il n y a rien an plus ni espace ni rien du tout !

    et pour ta ligne : System.out.println(resultat+""+reslt);

    il affiche chacune des solutions concaténé avec le résultat saisit par l'utilisateur !
    mais dans mon interface il affiche que le résultat est faux car il ne reconnais pas le if (resultat.equals(reslt)) {}

    je sais pas si je me suis bien fais comprendre !

  6. #6
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par islamvalala Voir le message
    il affiche chacune des solutions concaténé avec le résultat saisit par l'utilisateur !
    Tu peux me copier le résultat ici, que je constate par moi-même...
    (et c'est System.out.println(resultat+" "+reslt);, avec l'espace, sinon ça va pas être aisé à lire.

    D'après le code que tu montres, si tu obtiens le message "Le résultat est faux !" dans le champ, c'est que x vaut 0, donc qu'on ne vérifie jamais la condition du test if (resultat.equals(reslt)){. Au passage, tu pourrais utiliser un type boolean, vu que tu n'as que deux valeurs, 0 et 1.
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème d'Union de chaïne
    Par Oberown dans le forum Requêtes
    Réponses: 5
    Dernier message: 13/01/2006, 14h20
  2. [Configuration] problème de taille de chaînes de caractères
    Par Wormus dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 8
    Dernier message: 21/10/2005, 14h55
  3. Problème de gestion de chaînes avec pointeur
    Par LorDjidane dans le forum C
    Réponses: 18
    Dernier message: 19/10/2005, 15h40
  4. Problème pour exécuter une chaîne de caractères
    Par Pongo dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 02/09/2005, 10h34
  5. Problème d'affichage de chaîne
    Par duplo dans le forum Assembleur
    Réponses: 5
    Dernier message: 06/11/2004, 15h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo