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

Langage Java Discussion :

Structure conditionnelle ne fonctionne pas


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de marsupilami34
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 576
    Par défaut Structure conditionnelle ne fonctionne pas
    Bonjour à tous,

    J'ai la structure conditionnelle suivante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    String maChaine = "=ABCD"
    if (!(maChaine.substring(0,1)=="="))
    {
       System.out.println ("V");
    }
    else
    {
       System.out.println ("F");
    }
    Je ne comprends pas ce qui se passe car logiquement avec ce bout de code, le système devrait me retourner "F". Or il me renvoit "V". Est ce normal ? Cela n'est-il pas possible de comparer une chaine de caractère qui vaut "=" ?

    Merci d'avance pour vos réponses.

    Marsup

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    1 252
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 252
    Par défaut
    Le truc, c'est que tu compares une chaine de caractère à une autre en utilisant la comparaison == qui vérifie si deux instances sont en fait la même.

    Pour que ton test réussisse, tu dois utiliser la méthode equals().

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    String maChaine = "=ABCD"
    if (!(maChaine.substring(0,1).equals("=")))
    {
       System.out.println ("V");
    }
    else
    {
       System.out.println ("F");
    }

  3. #3
    Membre éclairé Avatar de marsupilami34
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 576
    Par défaut
    Super, ca marche mieux du coup comme ca

    Merci.

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

Discussions similaires

  1. [XL-2010] Somme conditionnelle ne fonctionne pas
    Par superloupiot dans le forum Excel
    Réponses: 5
    Dernier message: 24/01/2012, 20h48
  2. Réponses: 13
    Dernier message: 09/01/2011, 23h33
  3. Format conditionnel ne fonctionne pas
    Par chouki60 dans le forum Excel
    Réponses: 7
    Dernier message: 16/12/2009, 14h29
  4. Commentaires conditionnels ne fonctionnant pas
    Par Albat_r dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 15/10/2008, 00h41
  5. Mise en forme conditionnelle ne fonctionne pas
    Par rgdu86 dans le forum IHM
    Réponses: 0
    Dernier message: 22/02/2008, 12h13

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