IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Collection et Stream Java Discussion :

Problème avec ArrayList


Sujet :

Collection et Stream Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 66
    Par défaut Problème avec ArrayList
    Bonjour,
    Voici mon problème :

    j'ai un ArrayList qui doit stocker des données.
    Lors de l'éxécution de la fonction il seremplit bien mais apres impossible
    de réutiliser les données , mon ArrayList se vide.
    Voici mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    
    public class Livre {
    
        private File livre;
        private ArrayList<String> listLivre = new ArrayList<String>();
    
         public ArrayList<String> getListLivre() {
            return listLivre;
        }
    
        public File getLivre() {
            return livre;
        }
    
    
      // récupère tous les livres du dossier
      public ArrayList<String> listeLivre(File monDossier)
      {
            File[] maListe = monDossier.listFile();
    
            try
            {
    			//on parcour le dossier
                for(int i = 0; i<maListe.length; i++)
                {
    				// si c un dossier on éxécute de nouveau la methode
                    if(maListe[i].isDirectory())
                    {
                       monDossier  = maListe[i];
                       listeLivre(monDossier);
                    }
                else
                {   
    				// on remplit l'ArrayList			
                    getListFile().add(maListe[i].toString());
                }
            }
    
            } catch (Exception e) {
                System.out.println(e.toString());
            }
    
            return listLivre;
      }
    
    
    	public void AfficheLivre()
    	{
    	
    		RIEN NE S'AFFICHE ma liste est vide
    	
    		System.out.println("Liste des livres");
    		for(String s : getListFile())
    		{
    			System.out.println(s);
    		}
    	}
    }
    Voyez vous le problème ?
    Merci.

  2. #2
    Modérateur
    Avatar de kolodz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    2 209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 209
    Billets dans le blog
    52
    Par défaut
    Peut-tu nous montrer ton main ?
    Si une réponse vous a été utile pensez à
    Si vous avez eu la réponse à votre question, marquez votre discussion
    Pensez aux FAQs et aux tutoriels et cours.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 66
    Par défaut
    Je suis en SWING et cette methode Affiche() est appelé lors d'un clic bouton

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
     
    public class JLivre extends javax.swing.JFrame {
     
     
        Livre l = new Livre();
     
     
        /** Creates new form JLivre */
        public JLivre() {
            initComponents();
        }
     
        private void initComponents() {
     
            jButton3 = new javax.swing.JButton();
     
     
     
        private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {                                         
            l.Affiche();
    }                                        
     
     
        /**
        * @param args the command line arguments
        */
        public static void main(String args[]) {
            java.awt.EventQueue.invokeLater(new Runnable() {
                public void run() {
                    new JCryptage().setVisible(true);
                }
            });
        }

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Je ne vois nulle part cette méthode Affiche().
    Je ne vois pas non plus où est appelée la méthode listeLivre().
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 66
    Par défaut
    Erreur de recopiage tout à l'heure.
    Avec un premier bouton je liste tous les fichier présent dans un dossier (j'ai testé ca marche)

    Par contre lorsque je clic sur le 2eme bouton pour afficher ce qu'il doit y avoir dans mon ArrayList contenant la liste de fichier, il n'y a rien...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
       private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {                                         
                   l.listLivre(chemin du dossier)
    }     
     
     private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {                                         
            l.AfficheLivre();
    }

  6. #6
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    De ce que je vois, la méthode listeLivre() renvoie une ArrayList<Livre>, mais ne modifie pas le contenu de la variable membre listLivre, qui donc reste vide.

    Autrement dit, ton code lit la liste des livres, construit une ArrayList<Livre> qui contient cette liste, puis ne s'en sert pas, n'en fait rien, la laisse se perdre.

    Je te conseille de modifier listeLivre() pourqu'elle n'ait pas de type de retour (qu'elle soit void au lieu de ArrayList<Livre>, donc) et voir comment modifier les choses à partir de là.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème avec ArrayList
    Par yarf dans le forum Collection et Stream
    Réponses: 12
    Dernier message: 03/07/2007, 10h50
  2. problème avec ArrayList et JVM
    Par ulysse031 dans le forum Collection et Stream
    Réponses: 29
    Dernier message: 26/04/2007, 20h47
  3. problème avec arraylist
    Par ulysse031 dans le forum Collection et Stream
    Réponses: 1
    Dernier message: 27/02/2007, 12h00
  4. [débutant] problème avec arraylist
    Par sissi25 dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 17/12/2006, 16h01
  5. Problème avec ArrayList <String>
    Par fiphi dans le forum Collection et Stream
    Réponses: 8
    Dernier message: 29/08/2006, 09h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo