Bonjour,
ce code test si 'age' est un entier positif mais "matches("^\\s*\\d+\\s*$")" est une methode javascript.
Je cherche l'équivalent pour les types String java
merci.
if (!age.matches("^\\s*\\d+\\s*$"))
merci!
Bonjour,
ce code test si 'age' est un entier positif mais "matches("^\\s*\\d+\\s*$")" est une methode javascript.
Je cherche l'équivalent pour les types String java
merci.
if (!age.matches("^\\s*\\d+\\s*$"))
merci!
Salut,
tu veux savoir si une chaine contient un entier positif ??
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 try { monInt = Integer.parseInt(maChaine); // ici la chaine contien un entier donc : if(monInt >= 0) { // maChaine contient bien un entier positif } } catch (NumberFormatException ex){ // si tu es ici, ta chaine ne contient pas un entier }
Je comprends pas bien..
Tu veux savoir si les données rentrées sont positives?
Tu peux utiliser la classe StringTokenizer (voir ici )
Elle te permet de déterminer un délimiteur et de ressortir tes données... T'as plus qu'à les tester ensuite..
J'espère que ca peut t'aider
Pour chaque langage existe une faq / N'oubliez pas de lire les règles du forum
Ben depuis la version 1.4 de Java il faut faire :
Ce que tu viens d'ecrire en fait
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 if (!age.matches("^\\s*\\d+\\s*$"))
que pense tu de çà ?
ensuite tu n'as plus qu'à tester sa supériorité à 0 si tu obtiens un entier.
Code : Sélectionner tout - Visualiser dans une fenêtre à part monEntier = Integer.parseInt(maString) <-- il faut gérer le ParseException
j'ai JDK 1.5 mais if (!age.matches("^\\s*\\d+\\s*$")) ne fonctionne pas
Ceci devrait surement aller ; ou Sinon :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 final Pattern patter = Pattern.compile("^\\s*\\d+\\s*$"); Matcher mat = pattern.matcher(age.toString()); if (!mat.matches()) { // c'est OK } else { // Erreur , entier non positif }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 try { int i = Integer.parseInt(age.toString()) ; if ( i <= 0 ) { // entier pas positif } } ( catch Exception e) { // pas entier }
euh moi je fais tout connement :
pas besoin d'exceptions ^^
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 if(chaine.matches("[0-9]+")){ // C'est un entier positif int entier=Integer.parseInt(chaine); }else{ // Ce n'est pas un entier positif }
Skero > Ouai ça peut le faire aussi mais il me semble que ça ne gère l'élimination des caractères blancs en début et fin de chaine tel que "^\\s*\\d+\\s*$"
Et je viens de tester : si on ajouter des caractères blancs ( espace pour mon exemple ), on se prend un NumberFormatException.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager