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 :

Tableau de date


Sujet :

Collection et Stream Java

  1. #1
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Août 2006
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 105
    Par défaut Tableau de date
    Bonjour, pour un graphique j'ai besoin de faire un tableau de date : Date [] date

    Comme donnée,j'ai jours mois et année en int

    Voici le code que j'exécute, mais qui ne fonctionne pas. Comment puis je faire


    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
    		int i;
    		day_data temp = new day_data();
    		double open[] = new double[v.size()];
    		double close[] = new double[v.size()];
    		double max[] = new double[v.size()];
    		double min[] = new double[v.size()];
    		double volume[] = new double[v.size()];
    		Date date[] =  new Date[v.size()];
     
    		data file = new data();
    		file.fichier(v,choix);
     
    		for (i = 0; i < v.size(); i++) {
    			temp = (day_data) v.elementAt(i);
     
    			date[i]= DateUtilities.createDate((temp.date.year+2000),temp.date.month,temp.date.day);
    			open[i]=temp.open;
    			close[i]=temp.close;
    			max[i]=temp.max;
    			min[i]=temp.min;
    			volume[i]=temp.volume;
    		}
    Pourtant ça me parait logique, mais j'ai une erreur de type java.lang.ArrayIndexOutOfBoundsException.

    Si quelqu'un à une autre méthode ^^

    Merci d'avence

  2. #2
    Membre Expert Avatar de guigui5931
    Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2006
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 667
    Par défaut
    Tu as cette erreur à quelle ligne?

  3. #3
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Août 2006
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 105
    Par défaut
    A la ligne : date[i]= DateUtilities.createDate((temp.date.year+2000),temp.date.month,temp.date.day);

    Je peux faire un tableau de 1000 case que j'ai quand même l'erreur donc je comprend pas trop...

  4. #4
    Membre Expert Avatar de guigui5931
    Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2006
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 667
    Par défaut
    Tu peux montrer la trace complète d'erreur ainsi que la déclaration de ton tableau date stp?

  5. #5
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Août 2006
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 105
    Par défaut
    Déclaration :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Date date[] =  new Date[v.size()];
    Et voici toutes les erreurs :
    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
    Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 609
    	at chart.createHLDataset(chart.java:113)
    	at Bourse.creation_chart(Bourse.java:234)
    	at Bourse$analyse.actionPerformed(Bourse.java:87)
    	at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
    	at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
    	at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
    	at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
    	at javax.swing.AbstractButton.doClick(Unknown Source)
    	at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
    	at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source)
    	at java.awt.Component.processMouseEvent(Unknown Source)
    	at javax.swing.JComponent.processMouseEvent(Unknown Source)
    	at java.awt.Component.processEvent(Unknown Source)
    	at java.awt.Container.processEvent(Unknown Source)
    	at java.awt.Component.dispatchEventImpl(Unknown Source)
    	at java.awt.Container.dispatchEventImpl(Unknown Source)
    	at java.awt.Component.dispatchEvent(Unknown Source)
    	at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
    	at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
    	at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
    	at java.awt.Container.dispatchEventImpl(Unknown Source)
    	at java.awt.Window.dispatchEventImpl(Unknown Source)
    	at java.awt.Component.dispatchEvent(Unknown Source)
    	at java.awt.EventQueue.dispatchEvent(Unknown Source)
    	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    	at java.awt.EventDispatchThread.run(Unknown Source)
    Merci d'avance

  6. #6
    Membre confirmé
    Inscrit en
    Février 2004
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 90
    Par défaut
    Je ponse que tu dois declarer tes vecteurs comme des long pas des double, puisque tu vas les charger avec date, si non tu dois faire du cast de primitife.
    ciao

  7. #7
    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,

    Citation Envoyé par MasterChief78 Voir le message
    Pourtant ça me parait logique, mais j'ai une erreur de type java.lang.ArrayIndexOutOfBoundsException.
    Avant de chercher à résoudre le problème, il faut comprendre l'exception !!!

    ArrayIndexOutOfBoundsException Tu utilises un index en dehors de la taille d'un tableau...



    Tu crées des tableau de taille v.size(), donc les index vont de 0 à v.size()-1. Donc ton for est trop large :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for (i = 0; i < v.size(); i++) {

    a++

  8. #8
    Membre Expert Avatar de guigui5931
    Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2006
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 667
    Par défaut
    Je vais peut être dire une connerie mais si les indice vont de 0 à v.size()-1 sa boucle est correcte : quand i sera = à v.size() la condition i<v.size() ne sera plus respectée donc il sortira de la boucle.

  9. #9
    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
    En effet j'ai lu un peu trop vide...


    A quoi correspond la ligne suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    at chart.createHLDataset(chart.java:113)
    Sinon la liste v ne serait pas modifié entre la création des tableaux et leurs initialisations...


    a++

    PS : Et ne serait-il pas plus judicieux d'utiliser des objets plutôt qu'une multitude de tableaux ?

  10. #10
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Août 2006
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 105
    Par défaut
    chart.createHLDataset(), c'est la méthode qui contient ce bout de code.
    J'aurais fait des objets si j'avais pu, mais j'utilise cela dans le cadre de la bibliothèque graphique JFreeChart, et le prototype demande des tableaux de float...

  11. #11
    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
    Citation Envoyé par MasterChief78 Voir le message
    chart.createHLDataset(), c'est la méthode qui contient ce bout de code.
    Oui mais à quoi correspond la ligne 113 ?
    Et es-tu sûr que la liste v n'est pas modifié ?

    a++

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2002
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 38
    Par défaut
    Et es-tu sûr que la liste v n'est pas modifié ?
    Je mise 1 centime sur une modif de v dans la méthode


Discussions similaires

  1. Recherche dans un tableau par date et modification
    Par Alec dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 13/06/2008, 15h11
  2. [MySQL] Séparation de tableau par date
    Par gastoncs dans le forum PHP & Base de données
    Réponses: 14
    Dernier message: 25/03/2008, 14h54
  3. [Dates] Tableau de date mensuel
    Par Eyog74 dans le forum Langage
    Réponses: 4
    Dernier message: 19/07/2007, 10h24
  4. [ASP.NET 2.0 C#] Tableau et date
    Par onizuka159 dans le forum Général Dotnet
    Réponses: 2
    Dernier message: 13/06/2007, 12h00
  5. [Tableaux] tri tableau avec date
    Par omelhor dans le forum Langage
    Réponses: 12
    Dernier message: 17/10/2006, 21h24

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