Précédent   Forum du club des développeurs et IT Pro > Java > Général Java > Langage
Langage Forum d'entraide sur le langage Java et autres langages pour la JVM : syntaxe, POO, conventions, API standard. Avant de poster -> FAQ Java
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 08/01/2013, 16h52   #1
reap974
Invité de passage
 
Inscription : décembre 2012
Messages : 6
Détails du profil
Informations forums :
Inscription : décembre 2012
Messages : 6
Points : 1
Points : 1
Par défaut Problème ArrayList d'objets

Bonjour,

je suis débutant en Java (et en programmation d'ailleurs).
Je souhaite faire une arraylist d'objet. Ces objets sont chargés par un ficher csv.
une ligne = un objet.

Le problème est que l'implémentation de mes objets ne fonctionnent pas comme je voudrais...

J'ai 3 lignes donc 3 objets.
Je crée mes objets 1 à 1 et je verifie.
Lorsque j'ai intégré mes objets, je veux lire mon arraylist et c'est là que je trouve un problème...

exemple :
Equipement equip = new Equipement("...") à chaque ligne..
equip1 = @mem1
equip2 = @mem2
equip3 = @mem3

Quand je lis mon arraylist je retrouve :
@mem1 : contenu de equip3
@mem2 : contenu de equip3
@mem3 : contenu de equip3

Je comprend donc que mes objets sont crées car ils ont des @ mémoires différentes mais ils ont tous le contenu du dernier objet intégré (içi equip3).
J'ai beau cherché l'erreur.. je ne comprend pas...

Voici la méthode que j'utilise pour créer mes objets :

Code :
1
2
3
4
5
6
7
8
9
10
ArrayList <Equipement> p = new ArrayList <Equipement>();

public static void CreatObjet(ArrayList<Equipement> p, String ligne, int i) {
        String temp[];        
        temp = ligne.split("[|]");   //je split ma ligne dans les bonnes variables..
        ...
        Equipement equip = new Equipement(...); // je crée mon objet avec les bonnes variables.
        p.add( equip);      //j'ajoute l'objet (equip) à mon arraylist (p).
}

Merci d'avance pour votre aide.
reap974 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2013, 17h02   #2
adiGuba
Expert Confirmé Sénior
 
Avatar de adiGuba
 
Homme
Développeur Java/Web
Inscription : avril 2002
Messages : 12 657
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Corse (Corse)

Informations professionnelles :
Activité : Développeur Java/Web
Secteur : Transports

Informations forums :
Inscription : avril 2002
Messages : 12 657
Points : 22 438
Points : 22 438
Salut,

Il doit y avoir une erreur dans le code souligné en rouge :
Code :
1
2
        ...
        Equipement equip = new Equipement(...);

Mais difficile de t'aider pour l'instant !

a++
__________________
adiGuba [ tutoriels | blog | twitter ] Rédacteur/Modérateur Java Présentation de Java SE 7 (commentaires)
adiGuba est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2013, 17h16   #3
reap974
Invité de passage
 
Inscription : décembre 2012
Messages : 6
Détails du profil
Informations forums :
Inscription : décembre 2012
Messages : 6
Points : 1
Points : 1
Désolé, je pensais que ce n'était pas utile.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
ArrayList <Equipement> p = new ArrayList <Equipement>();
 
public static void CreatObjet(ArrayList<Equipement> p, String ligne, int i) {
        String temp[];        
        temp = ligne.split("[|]");   //je split ma ligne dans les bonnes variables..
        nR = temp[0];
        nH = temp[1];
        nO = temp[2];
        nS = temp[3];
        nDte = temp[4];
        nB = temp[5] ;
        nId = i;
 
        Equipement equip = new Equipement(nR, nH,nO, nS, nDte, nB, nId);   //création de l'objet avec les bons arg.
        p.add( equip);      //j'ajoute l'objet (equip) à mon arraylist (p).
}
Merci bien.
reap974 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2013, 17h41   #4
chtig
Membre Expert
 
Inscription : janvier 2007
Messages : 1 331
Détails du profil
Informations personnelles :
Âge : 36
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : janvier 2007
Messages : 1 331
Points : 1 561
Points : 1 561
Il n'y a pas de soucis je pense dans le code donné... Donc le soucis doit se trouver dans le code qui l'appelle

P.S. :
- tes variables sont nommées trop courtes a mon avis -> aucun sens -> peu de lisibilité
- tes variables servent à qqchose ? (je suppose que tu n'as pas mis tout le code). Parce que là pourquoi ne pas faire new Equipement(temp[0],temp[1),...) ?
__________________
Program manager chez TraceOne. http://www.traceone.com
chtig est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2013, 19h01   #5
tchize_
Expert Confirmé Sénior
 
Avatar de tchize_
 
Homme
Responsable de service informatique
Inscription : avril 2007
Messages : 18 287
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 33
Localisation : Belgique

Informations professionnelles :
Activité : Responsable de service informatique
Secteur : Service public

Informations forums :
Inscription : avril 2007
Messages : 18 287
Points : 32 766
Points : 32 766
Envoyer un message via MSN à tchize_ Envoyer un message via Skype™ à tchize_
Es-tu sur d'appeler chaque fois avec une ligne différente? Comment fais-tu pour afficher tes donnée et conclure qu'il n'y a que la dernière ligne? On peux voir le code de Equipement aussi? Tu n'aurais pas défini ses champs en statiques par hasard?
__________________
⥀⥁ Чиз faq java, cours java, javadoc. Pensez à et
Laisse entrer le jour après une nuit sombre. Si tu es toujours là, tu n'es pas faite pour mourir.
tchize_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2013, 08h51   #6
adiGuba
Expert Confirmé Sénior
 
Avatar de adiGuba
 
Homme
Développeur Java/Web
Inscription : avril 2002
Messages : 12 657
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Corse (Corse)

Informations professionnelles :
Activité : Développeur Java/Web
Secteur : Transports

Informations forums :
Inscription : avril 2002
Messages : 12 657
Points : 22 438
Points : 22 438
Citation:
Envoyé par chtig Voir le message
- tes variables sont nommées trop courtes a mon avis -> aucun sens -> peu de lisibilité
+1 !

Citation:
Envoyé par chtig Voir le message
- tes variables servent à qqchose ? (je suppose que tu n'as pas mis tout le code). Parce que là pourquoi ne pas faire new Equipement(temp[0],temp[1),...) ?
Avec des noms de variables explicites cela aurait été utile, car cela apporte plus de lisibilité.
Par exemple il est plus lisible de lire new User(firstName,lastName) que new User(temp[0],temp[1]).

Maintenant ce qui me fait peur, c'est que toutes cas variables devrait être des variables locales or ce n'est pas le cas : où sont-elle définis ?

Et en voyant qu'il y a une ArrayList<Equipement> p qui semble défini en attribut d'instance je crains qu'il n' s'agisse d'une mauvaise portée de variable...


a++
__________________
adiGuba [ tutoriels | blog | twitter ] Rédacteur/Modérateur Java Présentation de Java SE 7 (commentaires)
adiGuba est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2013, 12h08   #7
reap974
Invité de passage
 
Inscription : décembre 2012
Messages : 6
Détails du profil
Informations forums :
Inscription : décembre 2012
Messages : 6
Points : 1
Points : 1
Bonjour, tout d'abord je vous remercie pour vos réponses.

j'ai en effet déclaré mes variable en static. (cela pose t'il problème?)

Voici ma class Equipement :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
    private static String group;
    private static String host;
    (...)
public Equipement (String nGroup, String nHost, String nOnline, String nStatus, String nDte, String nBackupmessage, int nId){
		group = nGroup;
		host = nHost;
		online = nOnline;
		status = nStatus;
		dte = nDte;
		backupmessage = nBackupmessage;
                id = nId;
	}
public static void AfficheEquipement (ArrayList<Equipement> p, int i){
        System.out.println(p.get(i)+" : "+p.get(i).getGroup()+"    "+ p.get(i).getHost()+"    "+ p.get(i).getOnline()+"    "+ p.get(i).getStatus()+"    "+ p.get(i).getDte()+"    "+ p.get(i).getBck()+"    "+ p.get(i).getId());
    }
(... accesseur et mutateur get/set ...)
Ma class Outils :

Code :
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
 
    private static String nGroup;
    private static String nHost;
    (...)
public static void CreatObjet(ArrayList<Equipement> p, String ligne, int i) {
        String temp[];        
        temp = ligne.split("[|]");   //je split ma ligne dans les bonnes variables..
 
//(ici j'ai 3 autres "if"pour les cas différents)
 
        if (temp.length == 6){
            nGroup = temp[0];
            nHost = temp[1];
            nOnline = temp[2];
            nStatus = temp[3];
            nDte = temp[4];
            nBackupmessage = temp[5] ;
            nId = i;
        }
 
        Equipement equip = new Equipement(nGroup, nHost,nOnline, nStatus, nDte, nBackupmessage, nId);
  //création de l'objet avec les bons arg.
        p.add( equip);      //j'ajoute l'objet (equip) à mon arraylist (p).
}
public static void AfficheParc (ArrayList<Equipement> p){
 
        for(int i = 0; i < p.size(); i++){
      Equipement.AfficheEquipement(p, i);      
    }
Mon main :

Code :
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
 
public static void main(String[] args) {
        // TODO code application logic here
 
        FileReader monFichier = null;
        BufferedReader tampon = null;
        String temp[];
        int nId = 0;
        ArrayList <Equipement> p = new ArrayList <Equipement>();
 
        try {
            monFichier = new FileReader("U:\\Document Projet\\ManipCSV\\testA.csv");
            tampon = new BufferedReader(monFichier);
 
            while (true) {
                // Lit une ligne de test.csv
                String ligne = tampon.readLine();
                // Vérifie la fin de fichier
                if (ligne == null) {
                    break;
                }
 
                System.out.println("ligne "+nId+" : "+ligne);                
                Outils.CreatObjet(p,ligne,nId); 
 
                nId++;
 
            } // Fin du while
                Outils.AfficheParc(p);
        }
        catch (IOException exception) {
            exception.printStackTrace();
        } finally {
            try {
                tampon.close();
                monFichier.close();
            } catch (IOException exception1) {
                exception1.printStackTrace();
            }
        }
    }
Le Résultat :
Les 3 lignes avec verification du contenu.
@ mémoire de l'objet : contenu de l'objet
-----------
Lecture de mon Arraylist :
@ mémoire de l'objet : contenu de l'objet


ligne 0 : TUTU|BIBU005|online|succeeded|2012-12-16 05:00:22.524|
rapportcsv.Equipement@5d173 : TUTU BIBU005 online succeeded 2012-12-16 05:00:22.524 null 0
------------------
ligne 1 : TUTU|BIBU001|online|failed|2012-12-16 02:03:16.355|Device Backup communication failure.
rapportcsv.Equipement@1f9dc36 : TUTU BIBU001 online failed 2012-12-16 02:03:16.355 Device Backup communication failure. 1
------------------
ligne 2 : TOTO|TITO006|offline|||
rapportcsv.Equipement@e86da0 : TOTO TITO006 offline null null null 2
------------------
rapportcsv.Equipement@5d173 : TOTO TITO006 offline null null null 2
rapportcsv.Equipement@1f9dc36 : TOTO TITO006 offline null null null 2
rapportcsv.Equipement@e86da0 : TOTO TITO006 offline null null null 2

Comme je l'ai dit donc.. J'ai l'impression que mes objets sont bien intégrés à mon Arraylist "p" mais le contenu n'est pas bon...

Merci de votre aide.
reap974 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2013, 13h03   #8
thelvin
Modérateur
 
Inscription : septembre 2004
Messages : 7 127
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 7 127
Points : 10 372
Points : 10 372
Envoyer un message via Skype™ à thelvin
Citation:
Envoyé par reap974 Voir le message
j'ai en effet déclaré mes variable en static. (cela pose t'il problème?)
Ben oui, ça veut dire que deux objets différents ne peuvent pas avoir ces variables différentes.

(Ou, pour le dire autrement, ces variables sont créées uniques et non pas une par objet : si on en change une, on la change pour tout le programme et non pas pour un seul objet.)

C'est à ça que sert static. La seule raison qui aurait pu te pousser à mettre static, c'est que tu ne voulais pas que tes objets puissent avoir des valeurs différentes.
__________________
Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher du poisson, il videra le lac et au bout de deux ans son village ne mangera plus jamais.
Partagez vos connaissances, mais aussi comment s'en servir.
thelvin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2013, 14h25   #9
adiGuba
Expert Confirmé Sénior
 
Avatar de adiGuba
 
Homme
Développeur Java/Web
Inscription : avril 2002
Messages : 12 657
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Corse (Corse)

Informations professionnelles :
Activité : Développeur Java/Web
Secteur : Transports

Informations forums :
Inscription : avril 2002
Messages : 12 657
Points : 22 438
Points : 22 438
Citation:
Envoyé par reap974 Voir le message
j'ai en effet déclaré mes variable en static. (cela pose t'il problème?)
La question serait plutôt : pourquoi as-tu mis ces champs en static ?



Un champs static est indépendant de l'instance, et unique à l'application, donc cela ne correspond pas à ton besoin :
  • Dans ta classe Equipement, il te faudrait plutôt des variables d'instances.
  • Dans ta méthode CreateObjet(), il faudrait plutôt utiliser des variables locales.





Sinon, rien à voir mais ton traitement des ressources et des erreurs dans le main est incorrect (par exemple en cas de FileNotFoundException tu obtiendras un NullPointerException).

Avec Java 1.6 ou inférieur, la règle la plus simple pour faire cela proprement étant d'utiliser un bloc try/finally par ressource, et d'utiliser un try/catch englobant le tout pour traiter toutes les exceptions en un seul lieu :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
		ArrayList<Equipement> p = new ArrayList<Equipement>();
 
		try {
			BufferedReader br = new BufferedReader(new FileReader(
					"U:\\Document Projet\\ManipCSV\\testA.csv"));
			try {
				String ligne;
				int nId = 0;
				while ((ligne = br.readLine()) != null) {
					System.out.println("ligne " + nId + " : " + ligne);
					// Outils.CreatObjet(p,ligne,nId);
					nId++;
				}
				// Outils.AfficheParc(p);
			} finally {
				br.close();
			}
		} catch (IOException e) {
			// Traitement unique de toutes les exceptions
			e.printStackTrace();
		}
A partir de Java 7 on peut utiliser le try-with-ressource :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
		ArrayList<Equipement> p = new ArrayList<Equipement>();
 
		try (BufferedReader br = new BufferedReader(new FileReader(
					"U:\\Document Projet\\ManipCSV\\testA.csv"))) {
			String ligne;
			int nId = 0;
			while ((ligne = br.readLine()) != null) {
				System.out.println("ligne " + nId + " : " + ligne);
				// Outils.CreatObjet(p,ligne,nId);
				nId++;
			}
			// Outils.AfficheParc(p);
		} catch (IOException e) {
			// Traitement unique de toutes les exceptions
			e.printStackTrace();
		}

a++
__________________
adiGuba [ tutoriels | blog | twitter ] Rédacteur/Modérateur Java Présentation de Java SE 7 (commentaires)
adiGuba est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2013, 16h48   #10
reap974
Invité de passage
 
Inscription : décembre 2012
Messages : 6
Détails du profil
Informations forums :
Inscription : décembre 2012
Messages : 6
Points : 1
Points : 1
Je vous remercie pour vos réponses.
J'ai suivi vos conseils pour les variables d'instance dans ma classe Equipement ainsi que pour le try/finally try/catch.
j'ai donc pu continuer.

J'ai basculé mon main dans une methode insereFic dans ma class Outils afin de pouvoir créer mes objets.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
public static void insereFic(String chemin){
        ArrayList<Equipement> p = new ArrayList<Equipement>();
        try {
            BufferedReader tampon = new BufferedReader(new FileReader(chemin));
            try {
                String ligne;
                int nId = 0;
                while ((ligne = tampon.readLine()) != null) {
                    System.out.println("ligne " + nId + " : " + ligne);
                    Outils.CreatObjet(p, ligne, nId);
                    nId++;
                }
                //Outils.AfficheAllParc(p);
            } finally {
                tampon.close();
            }
        } catch (IOException e) {
            // Traitement unique de toutes les exceptions
            e.printStackTrace();
        }
    }
Mon but final est en faites d'extraire 2 fichiers csv dans 2 arraylist p1 et p2 (parc1 et parc2).
Je doit comparer les objets des arraylist, voir s'il y a eu des modifications entre chaques objets, faire des compteurs, ect...

J'ai commencé à faire ma méthode compareParc:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
    public static void compareParc(ArrayList<Equipement> p, ArrayList<Equipement> p2) {
 
        for (int i = 0; i < p.size(); i++) {
 
            for (int j = 0; j < p2.size() || p.get(i).getHost().equals(p2.get(j).getHost()); j++) {
                if (p.get(i).getOnline().equals(p2.get(j).getOnline()) == false || p.get(i).getStatus().equals(p2.get(j).getStatus()) == false) {
                    System.out.println("Change sur : " + p.get(i).getHost());
                }else{
                   System.out.println("New Host : " + p.get(i).getHost()); 
                }
            }
        }
    }
La solution que je vois pour l'instant est de faire des boucles imbriqués pour comparer p1.ob1 à p2.objX (que je dois trouver par rapport au nom getHost).

J'ai cependant plusieurs soucis :
_ Comment puis-je récupérer les @dresse mémoires des arraylist? (pour pouvoir les parcourir dans ma méthode compareParc()).
_ La compléxité va être conséquente... (mes fichiers font 5k lignes, donc 5k objets...)
(J'avais pensé comparer ligne par ligne (getId dans mes objets), mais il se trouve que les objets peuvent ne pas arriver dans le meme ordre).
Si vous avez une meilleur solution pas trop compliqué, je suis preneur(comme je vous l'ai dit, je débute en programmation).

Merci pour vos conseils.
reap974 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2013, 16h59   #11
thelvin
Modérateur
 
Inscription : septembre 2004
Messages : 7 127
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 7 127
Points : 10 372
Points : 10 372
Envoyer un message via Skype™ à thelvin
Citation:
Envoyé par reap974 Voir le message
_ Comment puis-je récupérer les @dresse mémoires des arraylist? (pour pouvoir les parcourir dans ma méthode compareParc()).
Je comprends pas trop ces histoires d'adresse mémoire, on fait pas de l'assembleur.
Ces arraylist sont des objets, passe-les en paramètre de ta méthode de la même manière que tu passerais n'importe quel paramètre. Pourquoi imaginer autre chose que ça ?

Citation:
Envoyé par reap974 Voir le message
_ La compléxité va être conséquente... (mes fichiers font 5k lignes, donc 5k objets...)
(J'avais pensé comparer ligne par ligne (getId dans mes objets), mais il se trouve que les objets peuvent ne pas arriver dans le meme ordre).
Si vous avez une meilleur solution pas trop compliqué, je suis preneur(comme je vous l'ai dit, je débute en programmation).
Il faudrait indexer un des deux (le mettre dans un HashMap) sur l'id des objets. Comme ça, quand tu parcours l'autre, tu peux demander l'objet correspondant à cet id dans le HashMap.

Ça te fait une complexité proche de O(2n + m) au lieu de la complexité O(n x m) des boucles imbriquées.
Pour un coût en mémoire sensiblement plus élevé mais pas exagéré.
__________________
Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher du poisson, il videra le lac et au bout de deux ans son village ne mangera plus jamais.
Partagez vos connaissances, mais aussi comment s'en servir.
thelvin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2013, 17h03   #12
adiGuba
Expert Confirmé Sénior
 
Avatar de adiGuba
 
Homme
Développeur Java/Web
Inscription : avril 2002
Messages : 12 657
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Corse (Corse)

Informations professionnelles :
Activité : Développeur Java/Web
Secteur : Transports

Informations forums :
Inscription : avril 2002
Messages : 12 657
Points : 22 438
Points : 22 438
Citation:
Envoyé par reap974 Voir le message
_ Comment puis-je récupérer les @dresse mémoires des arraylist? (pour pouvoir les parcourir dans ma méthode compareParc()).
Heu... Pas trop compris là !
On ne joue pas avec les adresses mémoires en Java !

Que veux-tu faire avec cela ???

Citation:
Envoyé par reap974 Voir le message
_ La compléxité va être conséquente... (mes fichiers font 5k lignes, donc 5k objets...)
(J'avais pensé comparer ligne par ligne (getId dans mes objets), mais il se trouve que les objets peuvent ne pas arriver dans le meme ordre).
Si les objets ne sont pas dans le même ordre, je ne vois que deux solutions :
  • Tout charger en mémoire comme tu le fait, et trier les deux listes (pour être sûr d'avoir le même ordre).
    Remarques qu'il faudra gérer le cas où un ID existe dans une liste et pas dans l'autre...
  • Lire un fichier ligne par ligne, et rechercher à chaque fois la ligne correspondante dans l'autre fichier... mais ca risque d'être bien long !


5K lignes cela ne me semblent pas énorme, donc perso j'opterais pour tout charger en mémoire (à moins que tu ne tournes sur un environnement restreint de ce coté là).



a++
__________________
adiGuba [ tutoriels | blog | twitter ] Rédacteur/Modérateur Java Présentation de Java SE 7 (commentaires)
adiGuba est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2013, 17h41   #13
reap974
Invité de passage
 
Inscription : décembre 2012
Messages : 6
Détails du profil
Informations forums :
Inscription : décembre 2012
Messages : 6
Points : 1
Points : 1
En faites, je ne vois pas comment passer en paramétre mes arraylist.
Puisque j'utilise ma méthode insereFic() pour intégrer mes deux fichiers (je crée donc 2 arraylist p).
Comment les appeler ensuite dans ma méthode compareParc(p1,p2)?

Désolé si je ne suis pas trés clair,quand je parle d'adresse mémoire (cela se nomme peut être "pointeur"?)
reap974 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2013, 19h00   #14
adiGuba
Expert Confirmé Sénior
 
Avatar de adiGuba
 
Homme
Développeur Java/Web
Inscription : avril 2002
Messages : 12 657
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Corse (Corse)

Informations professionnelles :
Activité : Développeur Java/Web
Secteur : Transports

Informations forums :
Inscription : avril 2002
Messages : 12 657
Points : 22 438
Points : 22 438
Ben... il suffit que la méthode insereFic() retourne la liste :
Code :
1
2
3
4
ArrayList list1 = insereFic(...);
ArrayList list2 = insereFic(...);
 
compareParc(list1, list2);
Il s'agit quand même des bases de la prog Java...

Je te conseille vivement de te plonger dans un cours Java

a++
__________________
adiGuba [ tutoriels | blog | twitter ] Rédacteur/Modérateur Java Présentation de Java SE 7 (commentaires)
adiGuba est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2013, 11h27   #15
reap974
Invité de passage
 
Inscription : décembre 2012
Messages : 6
Détails du profil
Informations forums :
Inscription : décembre 2012
Messages : 6
Points : 1
Points : 1
Bonjour et merci pour vos réponses.

Désolé pour ces questions un peu idiotes, comme je vous l'ai dit je debute en programmation (3mois) et c'est mon premier programme perso sans être dirigé...

Je retiens l'idée de HashMap pour plus tard (optimisation).

Merci encore pour votre aide.
reap974 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 04h50.


 
 
 
 
Partenaires

Hébergement Web