Si ton tableau est de taille fixe, la solution la plus rapide serait de l'implémenter comme un tableau à 2 dimensions :
Object[][] tab = new Object[nbLignes][nbColonnes];
Ensuite, tu prévois deux map pour faire la correspondance Date -> indice colonne, Integer -> indice ligne.
1 2 3 4 5
| Map dateToColonne = new HashMap();
dateToColonne.put(..., ...);
Map integerToLigne = new HashMap();
integerToLigne.put(..., ...); |
Ensuite, pour accéder à une ligne donnée :
1 2
| Integer indiceLigne = (Integer) integerToLigne.get(...);
Object[] ligne = tab[indiceLigne.intValue()]; |
et à une case :
1 2 3
| Integer indiceLigne = (Integer) integerToLigne.get(...);
Integer indiceColonne = (Integer) dateToColonne.get(...);
Object[] ligne = tab[indiceLigne.intValue()][indiceColonne.intValue()]; |
Reste que l'accès en colonne pose problème, à moins de prévoir un second tableau organisé en colonne/ligne.
Partager