Tableau d'ArrayList
Xenthys
-
Xenthys Messages postés 31 Date d'inscription Statut Membre Dernière intervention -
Xenthys Messages postés 31 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai été confronté à un problème que je ne trouve dans aucun manuel et les forums sur internet ne sont pas très explicites à cet sujet. J'aimerais bien créer un tableau (voire une matrice) d'arraylist et je n'arrive pas à trouver la syntaxe correcte.
Je veux pouvoir créer plusieurs petites listes qui sont dans une matrice (par exemple, il y aurait une liste à la position [1][1], une autre à la position [1][2] etc...). Je souhaite vraiment utiliser cette technique si cela était possible :quelle est la syntaxe de ce constructeur?
Merci d'avance pour votre aide!
J'ai été confronté à un problème que je ne trouve dans aucun manuel et les forums sur internet ne sont pas très explicites à cet sujet. J'aimerais bien créer un tableau (voire une matrice) d'arraylist et je n'arrive pas à trouver la syntaxe correcte.
public ArrayList<Personne>[][] Foule; Foule=new Arraylist[2][6];
Je veux pouvoir créer plusieurs petites listes qui sont dans une matrice (par exemple, il y aurait une liste à la position [1][1], une autre à la position [1][2] etc...). Je souhaite vraiment utiliser cette technique si cela était possible :quelle est la syntaxe de ce constructeur?
Merci d'avance pour votre aide!
A voir également:
- Tableau d'ArrayList
- Tableau word - Guide
- Tableau ascii - Guide
- Trier un tableau excel - Guide
- Tableau croisé dynamique - Guide
- Imprimer tableau excel sur une page - Guide
3 réponses
Tu ne peux pas utiliser des tableaux sur des Collection, il faut utiliser une combinaison de Collection (un ArrayList, c'est un tableau...)
Donc on peux faire : ArrayList<ArrayList<ArrayList<Personne>>> foule;
Et après faire des Personne p = foule.get(3).get(1).get(5); par exemple.
Mais on peut aussi utiliser faire des Collection personnalisées afin d'avoir des manipulations comme Personne p = foule.get(3,1,5); selon tes besoins...
Donc on peux faire : ArrayList<ArrayList<ArrayList<Personne>>> foule;
Et après faire des Personne p = foule.get(3).get(1).get(5); par exemple.
Mais on peut aussi utiliser faire des Collection personnalisées afin d'avoir des manipulations comme Personne p = foule.get(3,1,5); selon tes besoins...
bonsoir,
voila un exemple simple de matrice pour une classe personne:
1- j'ai défini la classe personne ailleurs et j'ai y intégré les getters et setters:
public class Personne {
private String nom;
private int age;
public Personne(String nom, int age)
{
this.nom=nom;
this.age=age;
}
public String afficher()
{
return "je suis la "+this.getNom()+", et mon age est "+this.getAge()+" ans";
}
public String getNom() {
return nom;
}
public void setNom(String nom) {
this.nom = nom;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
2- la classe Test qui fait appelle a la methode main()
public class Test {
public static void main(String[] args) {
Personne matrice [][]= new Personne[2][3];
//Enregistrer les personnes
for (int i=0;i<2;i++)
{
for(int j=0;j<3;j++)
{
matrice[i][j]= new Personne("Personne ("+i+") ("+j+")", (i+1)*(j+1));
}
}
//Afficher la matrice Personne
for (int i=0;i<2;i++)
{
for(int j=0;j<3;j++)
{
System.out.println(matrice[i][j].afficher());
}
}
}
}
résultat d'exécution:
je suis la Personne (0) (0), et mon age est 1 ans
je suis la Personne (0) (1), et mon age est 2 ans
je suis la Personne (0) (2), et mon age est 3 ans
je suis la Personne (1) (0), et mon age est 2 ans
je suis la Personne (1) (1), et mon age est 4 ans
je suis la Personne (1) (2), et mon age est 6 ans
bonne chance
voila un exemple simple de matrice pour une classe personne:
1- j'ai défini la classe personne ailleurs et j'ai y intégré les getters et setters:
public class Personne {
private String nom;
private int age;
public Personne(String nom, int age)
{
this.nom=nom;
this.age=age;
}
public String afficher()
{
return "je suis la "+this.getNom()+", et mon age est "+this.getAge()+" ans";
}
public String getNom() {
return nom;
}
public void setNom(String nom) {
this.nom = nom;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
2- la classe Test qui fait appelle a la methode main()
public class Test {
public static void main(String[] args) {
Personne matrice [][]= new Personne[2][3];
//Enregistrer les personnes
for (int i=0;i<2;i++)
{
for(int j=0;j<3;j++)
{
matrice[i][j]= new Personne("Personne ("+i+") ("+j+")", (i+1)*(j+1));
}
}
//Afficher la matrice Personne
for (int i=0;i<2;i++)
{
for(int j=0;j<3;j++)
{
System.out.println(matrice[i][j].afficher());
}
}
}
}
résultat d'exécution:
je suis la Personne (0) (0), et mon age est 1 ans
je suis la Personne (0) (1), et mon age est 2 ans
je suis la Personne (0) (2), et mon age est 3 ans
je suis la Personne (1) (0), et mon age est 2 ans
je suis la Personne (1) (1), et mon age est 4 ans
je suis la Personne (1) (2), et mon age est 6 ans
bonne chance