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

Collection et Stream Java Discussion :

[ArrayList]transformer l'objet récupéré en double...


Sujet :

Collection et Stream Java

  1. #1
    Membre actif Avatar de snoop
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Novembre 2003
    Messages : 354
    Points : 294
    Points
    294
    Par défaut [ArrayList]transformer l'objet récupéré en double...
    Bonjour,

    J'ai stockée des valeurs dans un arrayList et pour les récupérer sous forme de Double, je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    double valKMx = Double.parseDouble(coord.get(i).toString());
    Je transforme l'objet de ArrayList en string afin de pouvoir le convertir en double...

    Y-a-t-il une autre façon de faire ? moins fastidieuse ?

    Si vous avez des idées...
    Merci
    Snoop

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 33
    Points : 38
    Points
    38
    Par défaut
    salut,


    dans
    Code:
    double valKMx = Double.parseDouble(coord.get(i).toString());


    coord.get(i) est bien un entier?


    Si oui,Pourquoi ne fait tu pas simplement :
    double valKMx = coord.get(i);

  3. #3
    Rédacteur
    Avatar de bulbo
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2004
    Messages
    1 259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Février 2004
    Messages : 1 259
    Points : 1 937
    Points
    1 937
    Par défaut
    Moins fastidieuse non, mais plus efficace surement si c'est des objets Double qui sont dans la liste:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    double d = ((Double) list.get(index)).doubleValue();
    Bulbo
    [Java] [NetBeans] [CVS]
    La FAQ Java
    Merci de ne pas me poser de questions techniques par MP.

  4. #4
    Membre éprouvé
    Avatar de n!co
    Profil pro
    Inscrit en
    Février 2004
    Messages
    831
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 831
    Points : 936
    Points
    936
    Par défaut
    Tu stockes quoi dans ton ArrayList ?

    Il y a le castage, mais ça depend du type de contenu.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    double valKMx = (double) coord.get(i);
    Netbeans account : nico@share.java.net
    Merci de ne pas poser de questions techniques par MP

  5. #5
    Membre actif Avatar de snoop
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Novembre 2003
    Messages : 354
    Points : 294
    Points
    294
    Par défaut
    Merci Bulbo...
    justement, pourquoi est-ce plus efficace ?

    Jamatic : je stocke des données récupérées d'un fichier...
    Snoop

  6. #6
    Membre actif Avatar de snoop
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Novembre 2003
    Messages : 354
    Points : 294
    Points
    294
    Par défaut
    Et comme un ArrayList ne contient que des Objets, on ne peux pas caster un Object en double...
    Snoop

  7. #7
    Rédacteur
    Avatar de bulbo
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2004
    Messages
    1 259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Février 2004
    Messages : 1 259
    Points : 1 937
    Points
    1 937
    Par défaut
    Citation Envoyé par snoop
    Merci Bulbo...
    justement, pourquoi est-ce plus efficace ?

    Jamatic : je stocke des données récupérées d'un fichier...
    J'ai dit: c'est plus efficace si c'etait deja des objets Double dans l'ArrayList.
    Pourquoi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    list.get(index).toString()
    on retransforme le Double en String
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Double.parseDouble(...)
    On reparse la String pour en refaire un double

    Un cast est quand meme plus rapide que le parsing d'une chaine ..

    Par contre si c'est des Strings qui sont stockees (car infos venant d'un fichier) cette methode ne marche pas et il faut faire comme tu l'as deja fait ..

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    double d = Double.parseDouble((String) list.get(index));
    Bulbo
    [Java] [NetBeans] [CVS]
    La FAQ Java
    Merci de ne pas me poser de questions techniques par MP.

  8. #8
    Membre actif Avatar de snoop
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Novembre 2003
    Messages : 354
    Points : 294
    Points
    294
    Par défaut
    ok...merci

    Alors vaut-il mieux faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    double d = Double.parseDouble((String) list.get(index));
    OU
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    double d = Double.parseDouble(coord.get(index).toString());
    :
    Snoop

  9. #9
    Membre éprouvé
    Avatar de n!co
    Profil pro
    Inscrit en
    Février 2004
    Messages
    831
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 831
    Points : 936
    Points
    936
    Par défaut
    Citation Envoyé par snoop
    Et comme un ArrayList ne contient que des Objets, on ne peux pas caster un Object en double...
    J'ai oublié mes juvamines ce matin
    Netbeans account : nico@share.java.net
    Merci de ne pas poser de questions techniques par MP

  10. #10
    Rédacteur
    Avatar de bulbo
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2004
    Messages
    1 259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Février 2004
    Messages : 1 259
    Points : 1 937
    Points
    1 937
    Par défaut
    La premiere, car c'est moi qui te l'ai filee

    Plus serieusement la premiere, elle arrache non :

    [mode Troll off]

    La premiere (on y revient) car c'est plus efficace de caster une String en String que d'appeler une methode pour retransformer une String en String ..
    C'est plus clair aussi dans le programme que les objets de la liste sont des Strings, si plus tard tu mets des Doubles dedans tu auras une ClassCastException qui te permettra de savoir que tu fais qq chose de travers ...

    Bulbo
    [Java] [NetBeans] [CVS]
    La FAQ Java
    Merci de ne pas me poser de questions techniques par MP.

  11. #11
    Membre actif Avatar de snoop
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Novembre 2003
    Messages : 354
    Points : 294
    Points
    294
    Par défaut
    Merci pour ces précisions... et reste modeste...
    Snoop

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

Discussions similaires

  1. [FLASH 8] Transformer un objet en nombre
    Par julien.63 dans le forum Flash
    Réponses: 1
    Dernier message: 12/12/2006, 20h17
  2. [Vector et ArrayList] Transformer Enumeration en Object[]
    Par nebule dans le forum Collection et Stream
    Réponses: 6
    Dernier message: 25/09/2006, 16h27
  3. Transformer un objet JS en String
    Par FremyCompany dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 02/03/2006, 14h42
  4. Réponses: 1
    Dernier message: 18/01/2006, 18h39
  5. [MySQL] transformer une simple quote en double pour un insert !!
    Par st0nky dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 11/01/2006, 16h38

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