IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

Récupération d'un entier sans un zéro devant


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    726
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 726
    Par défaut Récupération d'un entier sans un zéro devant
    voilà j'ai une fonction qui prend en paramêtre un entier à 3 chiffres mais celui ci peut être de la forme 045 par exemple (avec un zéro devant).
    J'aimerai récupérer le 45 seulement car quand je récupère le paramètre java me l'interprète comme 37 qui doit être le code ASCI de valeur 045 je pense...

    Comment faire pour récupérer 45??

    merci

  2. #2
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,


    Comment tu fais pour lire ce paramètre ?
    37 correspond plutôt à la valeur en base 16 de 45, mais par défaut les méthodes de conversion utilisent la base 10 c'est pourquoi je ne comprend pas trop ce qu'il se passe...

    a++

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    726
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 726
    Par défaut
    Je lis directement le paramètre (note importante: ce n'est pas un paramètre d'une fonction mais d'un constructeur).
    J'écris:

    Objet obj = new obj(045)

    et dans ma classe Objet:

    public Objet(int entier)

    en simplifié

    merci

  4. #4
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Si tu utilises un type int tu dois utiliser 45 et non pas 045.

    Un type int n'a pas de notion de "nombre de chiffres".
    Et lorsque tu met un zéro en premier chiffre, le compilateur considère que c'est en base 16 d'où ton erreur

    a++

  5. #5
    Membre expérimenté

    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    159
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 159
    Par défaut
    Et lorsque tu met un zéro en premier chiffre, le compilateur considère que c'est en base 16 d'où ton erreur
    Si tu as un zéro devant c'est base 8, si tu as un zéro et un X c'est base 16:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    int a = 123; //décimal
    int b = 0123; //octal
    int c = 0X123; //hexadécimal

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Conversion d'entier vers QString, zéro devant
    Par alyma dans le forum Débuter
    Réponses: 2
    Dernier message: 28/11/2013, 09h13
  2. Réponses: 9
    Dernier message: 20/03/2006, 09h59
  3. Réponses: 8
    Dernier message: 09/02/2006, 16h11
  4. Saisie d'un entier sans débordement
    Par SteelBox dans le forum C
    Réponses: 8
    Dernier message: 28/10/2005, 14h18
  5. [linux] mettre des zéros devant un nombre
    Par le mage tophinus dans le forum C
    Réponses: 15
    Dernier message: 04/10/2005, 08h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo