Methodes Booléenne

Résolu
Bonjour,
J'ai un problème avec le code suivant ça fait des jours je n'arrive pas à compléter la méthode
   /**


* Cette methode teste si le car donne est un caractere numerique ('0' a '9').
* 
* @param car le caractere a tester.
* @return true si car est un caractere numerique, false sinon.
*/
    public static boolean estUnCarNum (char car) {
        return (car >= '0' && car <= '9');
    }

    /**


* Cette methode teste si tous les caracteres de la chaine donnee sont
* des caracteres numeriques ('0' a '9'). Une chaine null ou vide est
* consideree comme ne contenant pas que des caracteres numeriques (false).
* 
* @param chaine la chaine a tester.
* @return true si tous les caracteres de la chaine donnee sont numeriques,
*         false sinon.
* 
* EXEMPLES : 

*       ""       -> retourne false
*       null     -> retourne false
*       "a6788"  -> retourne false
*       "456&66" -> retourne false
*       "12345"  -> retourne true
* 

*    - Cette methode doit utiliser la methode estUnCarNum(...) de cette 
*      classe.
*/
    public static boolean neContientQueDesChiffres(String chaine) {
//Methode à completer
return true; // A changer lors de la compilation



Je voudrais bien quelqu'un m'aide. Merci beaucoup bonne soirée!

EDIT : Ajout des balises de code

1 réponse

  1. Modérateur
    Bonjour,

    Qu'as tu essayé ?
    Tu dis ne pas y arriver... tu as donc du tester des choses.....

    Ici on ne fourni pas de code tout cuit.. surtout lorsqu'il s'agit de devoirs/exercices...
    Je t'invite à commencer par lire attentivement ceci
    https://www.commentcamarche.net/infos/25899-demander-de-l-aide-pour-vos-exercices-sur-ccm/

    Puis, à nous montrer tes essais en utilisant bien les balises de code
    https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

    Petit indice pour t'aider à compléter ton code.... il faut boucler sur chaque caractère de la string et appeler la fonction estUnCarNum
    0
    1. J'ai déja essayé ceci :

      public static boolean neContientQueDesChiffres(String chaine){
      if(chaine == null || chaine.isEmpty()){
                  return false;
      }
      for(int i =0; i < chaine.length(); i++){
                  if( ! Character.isDigit(estUnCarNum(car))){
                      return false;
                  }
                  return true;
      }

      Mais on me dit que la variable car est introuvable pourtant elle est dans l'autre méthode, je débute en programmation donc je ne comprend pas trop.
      0
    2. Modérateur
      @Xavier_6800Je confirme.. tel que tu as écrit ton code .. la variable car n'existe pas...

      Regarde cet exemple et inspire t'en pour écrire le tient
      String chaine= "a really, really long string";
      for (int i = 0, n = chaine.length(); i < n; i++) {
          char car = chaine.charAt(i);
      }
      
      0
    3. @jordane45Bonjour,
      En m'inspirant de votre exemple j'ai fait ceci :
      public static boolean neContientQueDesChiffres(String chaine) {
              if(chaine == null || chaine.isEmpty()){
                  return false;
              }
              for(int i =0, n = chaine.length(); i < n; i++){
                  char car = chaine.charAt(i);
                  if(!Character.isDigit(car)){
                  return false;
                  }
              }
              return true;
          } 

      Mais je n'arrive toujours pas à utiliser la méthode estUnCarNum(car) comme voulu :(
      0
    4. @Xavier_6800
      public static boolean neContientQueDesChiffres(String chaine) {
              if(chaine == null || chaine.isEmpty()){
                  return false;
              }
              for(int i =0, n = chaine.length(); i < n; i++){
                  char car = chaine.charAt(i);
                  if(!estUnCarNum(car)){
                  return false;
                  }
              }
              return true;
          }
      0