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 :

les vecteurs en java


Sujet :

Collection et Stream Java

  1. #1
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    103
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 103
    Par défaut les vecteurs en java
    bonjour,
    je suis entrain d'écrire des données récupérées d'un fichier XML dans un vecteur et je dois en paralléle compter le nombre d'occurences de certaines balises j'ai construit un vecteur sous la forme:
    case[i]=nom_balise
    case[i+1]= nombre d'occurence de la balise
    le problème que dans ma boucle je veux incrémenter le nombre d'occurence de la balise mais j'arrive pas à le faire le code est:
    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
                     / /mon vecteur est:conceptNamefreq
                     in=courant2.getChild("Name").getText();
            	 conceptNamefreq.addElement(in);
            	 conceptNamefreq.addElement(freq);
            	 trouve=false;
            	 for(int l=0; l < conceptNamefreq.size(); l++)
                     {if(conceptNamefreq.elementAt(l).equals(in) )
                    	 { int obj = conceptNamefreq.elementAt(l+1);
                    	 conceptNamefreq.insertElementAt(obj, obj+1);
                    	  trouve=true;}
                     }
            	 if (trouve==false){
            		 conceptNamefreq.addElement(in);
                	 conceptNamefreq.addElement(freq);
     
            	 }
    mais ça fonctionne pas car je dois obj est un entier mais la fonction insertElementAt(obj, obj+1) demande un objet (celui que je veux place) en premier argument et l'index en 2ème argument.

  2. #2
    Membre Expert
    Avatar de CheryBen
    Inscrit en
    Mai 2005
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 599
    Par défaut
    Bonjour, pourquoi ne pas utiliser une HashMap avec comme identifiant le nom de la balise et en valeur le nombre d'occurences?

    ps :

  3. #3
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    103
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 103
    Par défaut
    c'est une idéé mais j'ai jamais utilisé cet objet

  4. #4
    Membre Expert
    Avatar de CheryBen
    Inscrit en
    Mai 2005
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 599
    Par défaut
    Il ne faut pas avoir peur de l'inconnu.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    HashMap map = new HashMap();
    map.put(clé, valeur);
    map.get(clé);
    Comment faire plus simple?

  5. #5
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    103
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 103
    Par défaut
    comment je peux le parcourir lorsqu'il contient plus qu'un élément? merci

  6. #6
    Membre Expert
    Avatar de CheryBen
    Inscrit en
    Mai 2005
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 599
    Par défaut
    Avec java 1.5 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    for(Entry<TypeCle, TypeValeur> entry : map.entrySet()) {
        TypeCle cle = entry.getKey();
        TypeValeur valeur = entry.getValue();
        // traitements
    }

  7. #7
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    103
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 103
    Par défaut
    c-à-d:
    for( entry <String , int > entry : map.entrySet()) {
    String cle = entry.getKey();
    int valeur = entry.getValue();
    System.out.println(cle);
    }
    sinon tu peux me donner des liens qui peuvent m'aider?
    car j'ai mis ce code et ça fonctionne pas

  8. #8
    Membre Expert
    Avatar de CheryBen
    Inscrit en
    Mai 2005
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 599
    Par défaut
    Ce qui peut t'aider c'est la javadoc, developpez.com et google.

    Je ne peux pas t'aider plus sans que tu expliques ce qui ne fonctionne pas.

  9. #9
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    103
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 103
    Par défaut
    j'ai pu parcourir mon map mais à la fin j'ai ce message d'erreur:
    Exception in thread "main" java.util.NoSuchElementException
    at org.jdom.ContentList$FilterListIterator.next(ContentList.java:725)

  10. #10
    Membre Expert
    Avatar de CheryBen
    Inscrit en
    Mai 2005
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 599
    Par défaut
    C'est une erreur jdom, tu as du chercher un élément qui n'existe pas dans ton fichier xml.

  11. #11
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    103
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 103
    Par défaut
    j'avais pas cette erreur avant d'utliser le map j'ai parser mon fichier et j'ai déjà affiché les balises que je veux les récupérer

  12. #12
    Membre Expert
    Avatar de CheryBen
    Inscrit en
    Mai 2005
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 599
    Par défaut
    Tu devrais ajouter une trace ou debugger pour savoir quel élément n'est pas trouvé.

  13. #13
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    103
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 103
    Par défaut
    j'ai réglé ce problème mais j'ai un autre en fait pour le moment j'ai pas d'erreur mais ce qui est contenu dans le map ne sont pas tous les éléments que je dois récupérer sachant que avant d'insérer les éléments dans le map je les affiche et après que je remplie le map je le parcours en affichant son clé mais j'ai pas les mêmes éléments.

  14. #14
    Membre Expert
    Avatar de CheryBen
    Inscrit en
    Mai 2005
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 599
    Par défaut
    Si tu récupères des éléments non voulus c'est que tu les a mis dans Map.

  15. #15
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    103
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 103
    Par défaut
    non en fait j'ai mis normalement tous les éléments dans map (qui se répétent parfois) car je veux les avoir tous dans map pour aprés calculer le nombre d'occurence de chaque terme dans le map.

  16. #16
    Membre Expert
    Avatar de CheryBen
    Inscrit en
    Mai 2005
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 599
    Par défaut
    Tu ne peux pas ajouter plusieurs fois le même élément dans la map. Le 1er argument de la méthode put sert d'identifiant, si tu fais map.put("toto", 2) et ensuite map.put("toto", 5) le 5 va écraser le 2.

    Tu peux utiliser la méthode contains pour vérifier si la map contient une clé.

Discussions similaires

  1. Réponses: 5
    Dernier message: 14/11/2014, 17h04
  2. Les futurs tutoriels Java sur DVP ?
    Par Ricky81 dans le forum Débats
    Réponses: 65
    Dernier message: 06/01/2012, 02h33
  3. [Avis] Les meilleurs programmes Java ?
    Par christopheJ dans le forum ImageJ
    Réponses: 69
    Dernier message: 07/10/2008, 01h12
  4. Problème avec les vecteurs Java
    Par choko83 dans le forum Débuter avec Java
    Réponses: 3
    Dernier message: 22/05/2008, 17h52
  5. [Stratégie] Ant pour les tests en Java ?
    Par franckR dans le forum Tests et Performance
    Réponses: 5
    Dernier message: 08/03/2004, 09h38

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