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 plusieurs elements d'une arraylist


Sujet :

Collection et Stream Java

  1. #1
    Membre confirmé
    Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Octobre 2004
    Messages : 201
    Par défaut Supprimer plusieurs elements d'une arraylist
    Re,

    Bon je pense que mon prob est assez basique mais je poste quand même !
    j'ai une arrayList<String> de ce type:
    [A],[B],[C],[A],[D]

    je voudrai enlever tous les elements A.
    la méthode .remove() enleve que le premier.
    la removeAll() utilise une collection je vois pas trop le principe....

  2. #2
    Membre confirmé
    Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Octobre 2004
    Messages : 201
    Par défaut
    bon je pense que j'ai trouvé

    while(results.remove("A")){
    results.remove("A");
    }

  3. #3
    Membre Expert
    Avatar de ®om
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 815
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 815
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    while(results.remove("A"));
    Ou plus efficace pour les ArrayList (et plus généralement les RandomAccess):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    int index;
    while((index = results.lastIndexOf("A")) >= 0)
        results.remove(index);

  4. #4
    Membre Expert
    Avatar de natha
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 346
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 346
    Par défaut
    Citation Envoyé par metalcoyote
    bon je pense que j'ai trouvé

    while(results.remove("A")){
    results.remove("A");
    }
    Alors juste une remarque, ce code marche mais n'est pas correct car tu fais 2 fois l'opération de remove alors que tu n'en testes qu'une sur 2. Avec un nombre impair de "A" tu fais un remove de trop (qui ne sert donc à rien).

  5. #5
    Membre confirmé
    Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Octobre 2004
    Messages : 201
    Par défaut
    effectivement

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

Discussions similaires

  1. [langage] Supprimer un élément dans une liste
    Par myjuna dans le forum Langage
    Réponses: 15
    Dernier message: 06/08/2014, 11h49
  2. Supprimer efficacement plusieurs entrées dans une ArrayList
    Par Djakisback dans le forum Collection et Stream
    Réponses: 6
    Dernier message: 15/02/2011, 02h26
  3. Réponses: 7
    Dernier message: 16/05/2006, 15h40
  4. [Collections]Supprimer des doublons dans une ArrayList
    Par emie31 dans le forum Collection et Stream
    Réponses: 3
    Dernier message: 12/12/2005, 15h15
  5. declarer plusieur elements dans une variable ?
    Par freebug dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 28/06/2005, 13h46

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