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

avec Java Discussion :

Linked List en Java - ConcurrentModificationException


Sujet :

avec Java

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 49
    Points : 45
    Points
    45
    Par défaut Linked List en Java - ConcurrentModificationException
    Salut à tous,

    J'essaye d'implémenter une liste chainé en Java. Voici mon algorithme que j'essaye de faire.

    J'ai une liste TempList qui contient des éléments de type "Node". Avant de rajouter une Nouveau type Node, je souhaite vérifier s'il n'existe pas dans ma liste. S'il n'existe pas, je l'ajoute, sinon je récupère l'index du noeud déjà présent.

    J'utilise pour ca les List Iterator de Java. Sauf que j'obtiens l'erreur " ConcurrentModificationException". Je n'ai pas le droit d'itérer sur une liste (i.e. utiliser aListIter.next()) alors que je suis entrain d'ajouter des éléments à ma liste. ( aList.add(aNode)).

    Quelqu'un aurait un exemple d'un tel algorithme qui pourrai m'aider. Je vous ai joint un bout de mon code , si ca peu aider.

    Merci,

    Somz.
    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
     
     
    Node checkNode=null;
     
    	List <Node> aList = new LinkedList<Node>();
        ListIterator <Node> aListIter = aList.listIterator();	// iter is an iterator on TempList
     
    							if (aList.isEmpty()){
    								aList.add(aNewNode);
    							}
    							else if (aList.isEmpty()== false){
     
    							   aListIter = aList.listIterator();
    							   checkNode=aListIter.next();
    							   while(aListIter.hasNext()){
    									sameZvector=verifysameconfig(checkNode,aNewNode);
    									if (sameZvector){//same Z vector
    									 //.
    								 	}
    								 	else{ //  same Z vector not found --> creat the node
    								 		aList.add(aNewNode);
     
    								 	}
    							 	}
    							}

  2. #2
    Membre éclairé Avatar de Heimdal
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    549
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 549
    Points : 718
    Points
    718
    Par défaut
    Essayes plutot avec la méthode add de ton ListIterator.

  3. #3
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 804
    Points
    48 804
    Par défaut
    avec ce code si tu a 5 éléments dans ta liste, et que tu veux ajouter X, tu va ajouter X 5 fois. La logique veux que tu itère toute la liste, et, une fois que tu a fini l'itération, si tu n'a rien trouvé, à ce moment là tu ajoute, pas à chaque itération...

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 49
    Points : 45
    Points
    45
    Par défaut
    Désolé pour le temps de latence de ma réponse.

    je vais essayer la méthode indiqué et je reviendrais vers vous si besoin

    Merci,


    SomZ

Discussions similaires

  1. Linked List en Java
    Par FANDENEGI dans le forum Général Java
    Réponses: 7
    Dernier message: 09/11/2013, 17h39
  2. Linked list et structures
    Par virtuadrack dans le forum C
    Réponses: 6
    Dernier message: 17/10/2007, 10h50
  3. Réponses: 7
    Dernier message: 22/06/2007, 10h56
  4. Listes en Java
    Par Identifiant dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 25/02/2007, 16h39
  5. Liste chainées JAVA
    Par badmix dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 04/01/2007, 15h24

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