ArrayList Multidimensionnelle

Trigu Messages postés 5 Date d'inscription mardi 17 octobre 2006 Statut Membre Dernière intervention 22 février 2010 - 22 févr. 2010 à 19:54
 Utilisateur anonyme - 25 févr. 2010 à 11:50
Bonjour a tous,

Tout d'abord, je tient a remercier la communauté pour toute l'aide qu'elle m'a apportée jusqu'a maintenant!! (c'est mon premier post alors j'en profite )

J'ai fait de nombreuses recherches sur le site et google mais je ne trouve pas de solution a mon problème ou plutôt mes problèmes :

J'ai du mal a utiliser les méthodes classiques ( .add, .get, .remove... ) d'une ArrayList avec une ArrayList multidimensionelle.
Voici le code :

public abstract class Index<T> implements TdaIndex<T> {

private ArrayList < ArrayList <T> > listeElement;

public Index () {
ArrayList< ArrayList<T> > listeElement = new ArrayList < ArrayList <T> >();
} // Constructeur

public boolean estElement ( T element ) {
return listeElement.indexOf ( element ) >= 0;
} // estElement

>public boolean ajouter ( ArrayList<T> element, int numero ) {
if ( !estElement( ArrayList<element> // Il manque quelquechose? //) ) {
listeElement.add(element).add(numero);
return true;
} else {
listeElement.add(element).add(numero);
return false;
} // if
} // ajouter

} // Index


Je ne comprend pas pourquoi Eclipse m'affiche : Syntax error on token ">" , expression excepted after this token

De plus, je cherche a retirer un des numéros qui accompagnerait un élément :

/**
* Retire le numero accompagnant l'element. Les autres numeros demeurent avec l'element le cas echeant.
* @param element element a retirer
* @param numero numero accompagnant l'element.
* @return true si le retrait s'est effectue avec succes, false si le numero ou l'element n'existe pas.
*/
public boolean retirer ( T element, int numero ) {
listeElement.remove(element).remove(numero);
}



Merci d'avance!

1 réponse

Utilisateur anonyme
25 févr. 2010 à 11:50
Pourquoi recrées-tu une liste locale en faisant ça dans le constructeur?
ArrayList< ArrayList<T> > listeElement = new ArrayList < ArrayList <T> >();

Tu devrais plutôt faire ça :
listeElement = new ArrayList < ArrayList <T> >();

La méthode estElement() ne devrait-elle pas prendre un paramètre de type ArrayList <T> plutôt?

Il faut que tu t'y prennes différemment pour appeler add(numero). Ton code est confus.


TUER : http://tuer.sourceforge.net/tuer.jnlp

yeah! vive java
0