Rechercher : dans
Par :

Accès aux éléments d'un ArrayList en Java

Dernière réponse le 12 mai 2009 à 14:33:10 matt, le 11 mai 2009 à 10:23:48 
 Signaler ce message aux modérateurs

Bonjour,

J'ai un ArrayList qui contient plusieurs ArrayList. Je cherche comment accéder aux éléments de mes ArrayList "fils" afin de pouvoir les afficher et les traiter individuellement.

Merci.
Cordialement,

Meilleures réponses pour « Accès aux éléments d'un ArrayList en Java » dans :
Introduction à la STL en C++ (standard template library) VoirIntroduction Principales classes de la STL std::pair std::list std::vector std::set std::map Les iterators iterator et const_iterator reverse_iterator et const_reverse_iterator Les algorithmes ...
Installer Java sous Ubuntu VoirPar défaut, Firefox n'est pas fourni avec Java. Voici comment procéder pour l'installer: Ouvrez un terminal (Menu Applications > Accessoires > Terminal) et tapez: sudo aptitude install sun-java6-jre sun-java6-plugin ou sudo aptitude install ...
Java - L'API JDBC VoirIntroduction à JDBC La technologie JDBC (Java DataBase Connectivity) est un ensemble de classes permettant de développer des applications capables de se connecter à des serveurs de bases de données (SGBD). L'accès aux bases de données avec...
Java - L'accessibilité VoirLa notion d'accessibilité Le concept d'accessibilité (généralement appelé encapsulation) définit la possibilité qu'a le concepteur d'une classe de restreindre l'accès à certaines données, ou plus généralement à certains éléments (méthodes, classes,...
Java - Les types de données VoirLes primitives Java est un langage orienté objet, c'est-à-dire que les éléments manipulés sont des classes, ou plus exactement des objets, c'est-à-dire des instances de classes. Toutefois ces objets contiennent des données possèdant un type (et...

1

matt, le 11 mai 2009 à 16:06:19

Personne ? Aucune idée ?

Répondre à matt

2

sandul, le 11 mai 2009 à 16:19:13

Salut,

Quel est le souci? Tu utilises 2 itérations imbriquées. Par exemple:

List<List<String>> parentList = new ArrayList<List<String>>();

List<String> child1 = new ArrayList<String>();
child1.add("a1");
child1.add("a2");
child1.add("a3");

List<String> child2 = new ArrayList<String>();
child2.add("b1");
child2.add("b2");

List<String> child3 = new ArrayList<String>();
child3.add("c1");

parentList.add(child1);
parentList.add(child2);
parentList.add(child3);

for (List<String> list : parentList) {
	for (String string : list) {
		System.out.println(string);
	}
}

++

Répondre à sandul

3

matt, le 12 mai 2009 à 09:55:46

Bonjour,

J'ai essayé cette solution (proche d'une déjà essayé) mais j'ai une erreur à l'execution (pas de pb à la compilation) : generics are not supported in -source 1.4

J'ai pourtant changé dans les propriétés du projet le source level en 1.6.

Je ne comprend pas d'où vient cette erreur.

Répondre à matt

4

sandul, le 12 mai 2009 à 10:14:09
  • +2

Si tu veux éviter le génériques, rien de plus simple:

		List parentList = new ArrayList();

		List child1 = new ArrayList();
		child1.add("a1");
		child1.add("a2");
		child1.add("a3");

		List child2 = new ArrayList();
		child2.add("b1");
		child2.add("b2");

		List child3 = new ArrayList();
		child3.add("c1");

		parentList.add(child1);
		parentList.add(child2);
		parentList.add(child3);

		for (int i = 0; i < parentList.size(); i++) {
			List child = (List) parentList.get(i);
			for (int j = 0; j < child.size(); j++) {
				System.out.println(child.get(j));
			}
		}


Sinon, est-ce que tu as fixé également la compatibilité du bytecode généré (les fichiers .class), à part la compatibilité des sources? Les génériques sont acceptés à partir de Java 1.5

++

Répondre à sandul

5

 matt, le 12 mai 2009 à 14:33:10

Merci.

ça marche bien comme ça. Je peux accéder aux éléments fils sans souci.

Répondre à matt
Collection CommentÇaMarche.net