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 :

Supprimer un objet d'une ArrayList, depuis l'objet


Sujet :

Collection et Stream Java

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2012
    Messages : 6
    Points : 8
    Points
    8
    Par défaut Supprimer un objet d'une ArrayList, depuis l'objet
    Bonjour,

    J'ai une ArrayList<Objet> contenant des objets ayant une durée de vie determinée, et devant se supprimer à un certain moment.

    Pour l'instant j'ai une méthode monObjet.isDead() que j'appelle lors du parcours de l'ArrayList, afin de savoir si je doit faire un monArrayList.remove(i) sur l'objet en question.

    Mais idéalement, j'aimerai que l'objet s'autodétruise tout seul, et que mon ArrayList diminue automatiquement en conséquence.

    Savez-vous si cela est possible ?

    Merci,

    Seb

  2. #2
    Modérateur
    Avatar de paissad
    Homme Profil pro
    Ingénieur de développement (Java/JEE/Eclipse RCP,EMF & webMethods)
    Inscrit en
    Avril 2006
    Messages
    1 043
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur de développement (Java/JEE/Eclipse RCP,EMF & webMethods)
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 043
    Points : 2 560
    Points
    2 560
    Par défaut
    Bonjour,
    il faut que tu regardes du côté du design pattern Observer.
    Ainsi, logiquement parlant, tes objets (qui sont dans la List) doivent être des objets de type Observable.
    Et tu crées une classe de type Observer qui va contenir ta liste (ArrayList) d'objets.
    Ainsi, dès qu'un objet est "dead", il est automatiquement supprimé de la liste !
    Cordialement,
    Nous n'héritons pas de la terre de nos parents, nous l'empruntons à nos enfants.
    Le chat du site est aussi ici pour aider. Ne pas hésiter à visiter !

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2012
    Messages : 6
    Points : 8
    Points
    8
    Par défaut
    Merci, super ! Je vais regarder ça, mais ça semble correspondre à ce que je recherche.

  4. #4
    Membre averti

    Profil pro
    Inscrit en
    Avril 2005
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 28
    Points : 300
    Points
    300
    Par défaut
    Rendre l'objet observable et transformer la gestion de la liste en observer est toujours possible. Personnellement je trouve ce pattern trop "meta" pour être exploitable dans la pratique. Le plus simple serait de donner à l'objet un contexte d'exécution, il n'aurait pas connaissance de la liste mais avertirait lors de son fin de vie le contexte. C'est bien sûr proche de l'observable mais c'est plus précis et autorise de suivre d'autres états par la suite.

    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
    class MonObjet {
       private ObjetContexte c;
     
       public void setContext( ObjetContexte c ) {
         this.c = c;
       }
     
     
     
       public void remove() {
         if ( c != null ) {
           c.isDead();
         }
       }
    }

Discussions similaires

  1. Parcourir et supprimer un objet dans une ArrayList
    Par Eausport dans le forum Collection et Stream
    Réponses: 32
    Dernier message: 03/08/2012, 10h28
  2. [Débutant] Initialiser les propriétés de tous les objets d'une ArrayList
    Par Tententai dans le forum API standards et tierces
    Réponses: 5
    Dernier message: 23/05/2006, 20h24
  3. Réponses: 7
    Dernier message: 16/05/2006, 15h40
  4. [C#] Tri d'objet dans une ArrayList
    Par guillaume16 dans le forum Windows Forms
    Réponses: 4
    Dernier message: 14/03/2006, 12h05
  5. [Collections]Supprimer des doublons dans une ArrayList
    Par emie31 dans le forum Collection et Stream
    Réponses: 3
    Dernier message: 12/12/2005, 15h15

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