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

avec Java Discussion :

Probleme pour retourner un tableau


Sujet :

avec Java

Vue hybride

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

    Informations forums :
    Inscription : Mars 2012
    Messages : 21
    Par défaut Probleme pour retourner un tableau
    Bonsoir,

    Je suis sous Eclipse 4.28.0

    J'ai une ArrayList : distance que je veux transformer en Tableau : tableauDesDistances
    Dans la boucle quand je print avec les index tout se passe bien
    Par contre le return me donne ce code : [D@18a70f16

    Le joint le code ci dessous

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
     
    import java.io.IOException;
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.List;
    import org.gavaghan.geodesy.Ellipsoid;
    import org.gavaghan.geodesy.GeodeticCalculator;
    import org.gavaghan.geodesy.GlobalPosition;
     
    public class CalculDesDistances {
      Double distance = (double)0;
      ArrayList<Double> mesLatitudes;
      ArrayList<Double> mesLongitudes;
      ArrayList<Double> mesAltitudes;
     
      public ArrayList<Double> CalculDesDistances(ArrayList<Double>mesLatitudes,  ArrayList<Double>mesLongitudes, ArrayList<Double>mesAltitudes)  throws IOException {
        ArrayList<Double>tableauDesDistances = new ArrayList<Double>();
        tableauDesDistances.add(distance);
        GeodeticCalculator geoCalc = new GeodeticCalculator();
        Ellipsoid reference = Ellipsoid.WGS84;
        for(int i = 1 ; i < mesLatitudes.size(); i++) {
          Double lat1 = mesLatitudes.get(i-1);
          Double long1 = mesLongitudes.get(i-1);
          Double alt1 = mesAltitudes.get(i-1);
          Double lat2 = mesLatitudes.get(i);
          Double long2 = mesLongitudes.get(i);
          Double alt2 = mesAltitudes.get(i);
          GlobalPosition pointA = new
          GlobalPosition(lat1, long1, alt1); // Point A
          GlobalPosition pointB = new
          GlobalPosition(lat2, long2, alt2); // Point B
          distance = geoCalc.calculateGeodeticCurve(reference, pointB, pointA).getEllipsoidalDistance();// Distance between Point A and Point B
          tableauDesDistances.add(distance);
        }
        return tableauDesDistances;
      }
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    public class ConversionListeEnTableau {
      public static double[]
     
      ConversionListeEnTableau(ArrayList<Double>laListe)throws IOException {
        //int a = laListe.size();
        double[] monTableau;
        monTableau = new double[laListe.size()];
        for (int i = 0 ; i < laListe.size();) {
          //double xi = laListe.get(i);
          //System.out.println(xi);
          monTableau[i]= laListe.get(i);
          System.out.println(i + " : - " +
          monTableau[i]); // Tous les index s'affiche correctement
          i ++;
        }
        System.out.println(monTableau);
        return monTableau; // Me retourne D@18a70f16
      }
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    public class Main {
      public static void main(String[] args) throws IOException {
        String leFichier="";
        String leGraphe = "";
        Double denivellePositif;
        ChoixFichiers monFichier = new ChoixFichiers("");
        leFichier = monFichier.ChoixFichiers();
        NomDuGraphe monGraphe = new NomDuGraphe("");
        leGraphe = monGraphe.NomDuGraphe(leFichier);
        ListeDesAltitudes altitude = new ListeDesAltitudes();
        ArrayList<Double> altitudes = altitude.ListeDesAltitudes(leFichier);
        CalculDuDenivellePositif dPositif = new CalculDuDenivellePositif();
        denivellePositif = dPositif.CalculDuDenivellePositif(altitudes);
        ListeDesLatitudes latitude = new ListeDesLatitudes();
        ArrayList<Double>latitudes = latitude.ListeDesLatitudes(leFichier);
        ListeDesLongitudes longitude = new ListeDesLongitudes();
        ArrayList<Double> longitudes = longitude.ListeDesLongitudes(leFichier);
        CalculDesDistances lesDistances = new CalculDesDistances();
        ArrayList<Double> distance = lesDistances.CalculDesDistances(latitudes, longitudes, altitudes);
        double[] monTableauDeDistances = ConversionListeEnTableau.ConversionListeEnTableau(distance);
        System.out.println("La liste des distances : " +distance.toString());
        int i ;
        double distanceTotale = 0;
        for (i = 0; i < distance.size(); ++i) {
          distanceTotale += distance.get(i);
        }
        System.out.println("La distance parcourue est : " +
        distanceTotale + "m");
        //System.out.println(monTableauDeDistances);
      }
    }

    Merci pour l'aide que vous voudrez bien m'apporter.

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Hello,

    le problème n'est pas de retourner un tableau.

    C'est qu'on ne peut pas donner un tableau à System.out.println(). Ni espérer qu'il soit implicitement converti en texte d'une manière ou d'une autre.

    Affiche-le avec une boucle, ou utilise System.out.println(Arrays.toString(leTableau)); et tu verras que le tableau contient bien les données que tu y a mises.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2012
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 21
    Par défaut Visualisation des donnees de tableau
    Bonsoir,

    Effectivement j'ai supprimer : System.out.println(monTableau) et je n'ai plus l'erreur

    Il y a t-il un code pour savoir si c'est une ArrayList ou un Array ?

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mars 2012
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 21
    Par défaut verification du type d'une variable
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    String typeName = distance.getClass().getTypeName();
    System.out.println("Object Type: " + typeName);

  5. #5
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Oui enfin tu pourrais simplement utiliser tes yeux.

    On reproche suffisamment à Java d'être verbeux, le type des variables est quand même très immédiatement visible.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

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

Discussions similaires

  1. Problème pour retourner un tableau de points
    Par kolarium dans le forum Collection et Stream
    Réponses: 10
    Dernier message: 28/11/2012, 14h44
  2. [MySQL] Problème pour trier un tableau
    Par jojo57 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 11/04/2007, 13h12
  3. problème pour trier un tableau de hashage
    Par Jasmine80 dans le forum Langage
    Réponses: 1
    Dernier message: 25/02/2007, 13h02
  4. [Tableaux] Problème pour contrôler un tableau
    Par renaud26 dans le forum Langage
    Réponses: 5
    Dernier message: 10/04/2006, 11h45

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