Bonjour, j'ai un probleme avec la taille de mon ArrayList, je ne vois pas ou je pourrais l'initialiser correctement dans mon code.
L'arrayList est déclaré en Global , et sa taille doit etre identique a celle d'un autre ArrayList qui est aussi déclaré en global dans la meme feuille.
Code : Sélectionner tout - Visualiser dans une fenêtre à part private ArrayList<Double> stockage=new ArrayList<Double>();
Je ne peux pas initialiser bettement "stockage" dans la methode l'utilisant car j'ai besoin de conserver les valeurs entre les appels de cette méthode...
Code : Sélectionner tout - Visualiser dans une fenêtre à part private ArrayList<String> echelleTps = new ArrayList<String>();
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
38
39
40
41
42
43
44 public ArrayList ChargeParTache(String nb,String res, String nom) throws ParseException{ String nomConc=nb+nom+res; for(Iterator it = mapRepartition.entrySet().iterator(); it.hasNext();) { Entry e = (Entry) it.next(); String k = (String) e.getKey(); Object v = e.getValue(); if(k.substring(38).trim().equals(nomConc)){ for (Iterator j = ((AbstractList<Interval>) v).iterator() ; j.hasNext() ; ) { Interval intervalle = (Interval) j.next(); GregorianCalendar dateComp=parseDate2(intervalle.getJour()); double charge=intervalle.getNum(); for(i=0;i<echelleTps.size()-1;i++){ GregorianCalendar date1=parseDate3(echelleTps.get(i)); GregorianCalendar date2=parseDate3(echelleTps.get(i+1)); if(dateComp.after(date1) && dateComp.before(date2)){ double temp=stockage.get(i); stockage.set(i,temp+charge); } } } } else{ stockage.clear(); for (Iterator j = ((AbstractList<Interval>) v).iterator() ; j.hasNext() ; ) { Interval intervalle = (Interval) j.next(); GregorianCalendar dateComp=parseDate2(intervalle.getJour()); double charge=intervalle.getNum(); for(i=0;i<echelleTps.size()-1;i++){ GregorianCalendar date1=parseDate3(echelleTps.get(i)); GregorianCalendar date2=parseDate3(echelleTps.get(i+1)); if(dateComp.after(date1) && dateComp.before(date2)){ stockage.set(i,charge); } } } } } return (stockage); }
Je ne vois pas , a part, attribuer une taille en dur dans la déclaration en global , mais ca ne conviens pas du tout dans mon cas. Peut etre existe il une propriété que je ne connais pas , permettant a la taile de s'auto ajustée?? ( avec java on ne sait jamais)
Merci beaucoup d'avance !!
Partager