Problème avec un ensemble des entiers en java

Résolu
geninfo25 Messages postés 10 Date d'inscription   Statut Membre Dernière intervention   -  
geninfo25 Messages postés 10 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

je veux faire ca m
 if(s.charAt(i)=[0.9]){
         return true;
  }
mais l'instruction [0.9]n'est pas juste je veux savoir comment la faire en java
avec l'instruction s.charat(i)=[0.9] je veux dire que la chaîne de caractère s ne contient que des chiffres
merci d'avance .
A voir également:

3 réponses

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Il faudrait que tu (re)apprennes les bases du langage Java !!!
Si tu ne sais pas comparer deux caractères c'est même pas la peine d'essayer de faire plus compliqué...

return s.charAt(i)>='0' && s.charAt(i)<='9';
0
geninfo25 Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
moi je veux comparer si une chaîne de caractère si elle ne contient que des double ou bien elle contient des caractère ou des caractères et des doubles
c'est pour ça je fais la boucle for + un instruction de condition comme ça :

public boolean verifier(String s){
          
            for(int i=0; i<s.length();i++){
                if(s.charAt(i)== un nombre double de 0 à 9 plus la virgule si elle  existe ){
                 n++;  
                }                     
            }
            if(s.length()==n){
                return true;
            }else{
                return false;
             
            }
}

mon problemme est comment expliquer en java la phrase : un nombre double de 0 à 9 plus la virgule si elle est existe .
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Tu dois faire comme je l'ai mis plus haut, il faut juste lire !!!
s.charAt(i)>='0' && s.charAt(i)<='9'
Sauf que depuis tu as rajouté la condition virgule, il faut donc rajouter ce cas :
(s.charAt(i)>='0' && s.charAt(i)<='9') || s.charAt(i)=='.'
Remarque : en général pour faire ça on ne s'embête pas, on convertit directement en double avec Double.parseDouble(String s), et on récupère l'exception au besoin, ça évite d'avoir à gérer soi même tous les cas genre avoir une seule virgule, avoir éventuellement un + ou un - devant, accepter la notation scientifique etc...

try
{
    double d = Double.parseDouble(s);
    return true;
}
catch (Exception e)
{
    System.err.println(e);
    return false;
}
La confiance n'exclut pas le contrôle
0
geninfo25 Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
merci kx l'utilisation d'une exception c'est la bonne solution
0