Partage
  • Partager sur Facebook
  • Partager sur Twitter

Scanner comment Garder la variable !

Sujet résolu
    16 octobre 2010 à 15:57:53

    Bonjour, je débute en JAVA et je m'amuse à faire des petits scripts histoire de bien tout "gérer" .

    Seulement j'aimerais savoir comment garder la variable que l'utilisateur à entrer... j'y arrive pas !

    Voici le code :

    import java.util.Scanner;
    
    
    public class classe1 {
    
    
    
        /**
         * @param args
         */
        public static void main(String[] args) {
            // TODO Auto-generated method stub
        Scanner nom = new Scanner (System.in);
        System.out.print("Que veux tu faire ? : ");
        String str = nom.nextLine();
        System.out.print("Tu veux " + str);
        System.out.println(" C'est bien ça ? ");
        String entree = "Hugo";
        if(str == entree )
        {
            System.out.print("Salut Hugo, Tu gère ton script là !"); 
        }
        else 
        {
            System.out.print("Tu gère pas ton script là du con xD !");
        }
        }
    
    }
    
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      16 octobre 2010 à 20:19:23

      L'égalité entre objet(et donc des Strings) se fait avec la méthode equals, pas avec l'opérateur == (qui lui teste que l'emplacement mémoire physique est identique).
      • Partager sur Facebook
      • Partager sur Twitter
        16 octobre 2010 à 20:46:10

        Tu peux utiliser les fichiers!
        • Partager sur Facebook
        • Partager sur Twitter
          16 octobre 2010 à 21:38:39

          Comme l'a dit Shakhal, l'opérateur "==" ne vérifie pas l'égalité entre les chaînes.

          Pour avoir ce que tu désire (et accessoirement avoir un truc plus court), tu peux mettre le if ainsi:

          if(str.equals("Hugo"))
          


          Et supprimer la ligne de déclaration de "entree".
          • Partager sur Facebook
          • Partager sur Twitter
          Anonyme
            16 octobre 2010 à 23:10:56

            Citation : delta01

            Comme l'a dit Shakhal, l'opérateur "==" ne vérifie pas l'égalité entre les chaînes.

            Pour avoir ce que tu désire (et accessoirement avoir un truc plus court), tu peux mettre le if ainsi:

            if(str.equals("Hugo"))
            



            Et supprimer la ligne de déclaration de "entree".



            en général c'est plus sur de faire : "Hugo".equals(str) ainsi si str est null, on ne se prend pas une npe.
            • Partager sur Facebook
            • Partager sur Twitter

            Scanner comment Garder la variable !

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown