Partage
  • Partager sur Facebook
  • Partager sur Twitter

tester le type d'une variable java

Sujet résolu
    28 mai 2011 à 23:37:37

    bonsoir eh bien j'utilise netbeans ide ,je fais des application graphique et j'ai un probleme.eh bien je propose a l'utilisateur un jTextField pour qu il remplisse un numero de telephone.mais lorsque je récupere ce numéro il est de type string ensuite je le parseInt et du coup je ne vois pas du tout comment je pourrai tester ce que l'utilisateur introduit du moment que tout est au début String :( . et si l'utilisateur introduit une chaine de caractere a la place des nurmeros attendus l'instruction parseInt bloque et tout le programme plante :( jaimerai obliger l'utilisateur a saisir des chiffres ou sinon tester la valeur introduite pour savoir s'il s'agit d'un chiffre ou d'un string sachant qu au début tout est string et que ce n'est qu a l'étape du parseInt que le pgm se rend compte que ce qu il essaye de transtiper est au faite un string o_O aidez moi s'il vous plait
    • Partager sur Facebook
    • Partager sur Twitter
      29 mai 2011 à 0:58:21

      Tu peux soit redéfinir un JTextField personnalisée en créant une nouvelle classe (Google + "JTextField integer only"), soit, vérifier si le texte entré peut être converti en entier :

      int monNumero = 0;
      try {
          monNumero = Integer.parseInt(monString),
      } catch (NumberFormatException e) {
          System.err.println("Erreur : Ce n'est pas un entier !");
      }
      
      • Partager sur Facebook
      • Partager sur Twitter
        29 mai 2011 à 1:00:38

        Regardes du coté des expréssions régulières. Voici le premier lien que j'ai trouvé sur google, je sais pas ce qu'il vaut mais c de ce coté qu'il faut chercher.

        http://prevert.upmf-grenoble.fr/Prog/J [...] gulieres.html

        Bon courage.
        • Partager sur Facebook
        • Partager sur Twitter
          29 mai 2011 à 10:15:18

          +1 pour les Regex. Matheo donne la regex d'un numéro de téléphone dans le cours sur le PHP.
          Tu peux faire simple en utilisant matches() de la classe String ou plus compliqué en utilisant Pattern.
          • Partager sur Facebook
          • Partager sur Twitter
            29 mai 2011 à 11:53:19

            C'est un peu l'artillerie lourde les regex car la solution basée sur la capture de l'exception marche (et est plus ou moins prévue pour). Maintenant c'est vrai que ça marche.
            • Partager sur Facebook
            • Partager sur Twitter
              29 mai 2011 à 12:07:51

              Oui et non je dirais. Oui si on peut gérer ça avec l'exception et non parce que ça doit même pas prendre 10 lignes à faire en utilisant Pattern et Matcher. Perso, je n'aime pas trop matches() de String, je trouve que c'est un peu merdique pour récupérer ce qui correspond si matches() vaut true.
              • Partager sur Facebook
              • Partager sur Twitter
                29 mai 2011 à 12:11:14

                En même temps il doit y avoir des moyens graphiques meilleurs qu'un textfield pour récupérer un numéro de téléphone. Sinon j'approuve l'idée d'un JTextField personnalisé qui n'autorise que les chiffres. Il suffit alors de vérifier que charAt(0) == '0' et length() == 10
                • Partager sur Facebook
                • Partager sur Twitter

                tester le type d'une variable java

                × 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