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 :

Nombre élément Iterator


Sujet :

Collection et Stream Java

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 156
    Par défaut Nombre élément Iterator
    Salut,
    Y a t-il un moyen de connaitre le nombre d'éléments d'un iterator sans le parcourir ?
    Merci.

  2. #2
    Membre Expert Avatar de Fench
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2002
    Messages
    2 353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Groenland

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 353
    Par défaut
    Bonjour,

    Cela dépends de comment est construit ton iterator ???

    Ex si d'une liste alors liste.size();

  3. #3
    Membre Expert Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 690
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 690
    Par défaut
    Y a t-il un moyen de connaitre le nombre d'éléments d'un iterator sans le parcourir ?
    Si tu dispose uniquement de l'itérateur et de rien d'autre, non.
    Si tu as accès à la collection parcourue, tu peux utiliser maCollection.size()

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 156
    Par défaut
    Citation Envoyé par Uther Voir le message
    Si tu dispose uniquement de l'itérateur et de rien d'autre, non.
    Si tu as accès à la collection parcourue, tu peux utiliser maCollection.size()
    Mon bout de code est :
    Iterator<String> cells = row.cellIterator();
    je veux savoir le nombre d'éléments ds cells sans parcourir cells
    Est il possible ?

    Merci.

  5. #5
    Membre Expert Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 690
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 690
    Par défaut
    Comme déjà dit non, tu ne peux pas à partir de l'itérateur.
    Il faudrait que tu ais accès à la collection d'ou viens cet itérateur.

  6. #6
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,

    Citation Envoyé par Tail Voir le message
    Mon bout de code est :
    Iterator<String> cells = row.cellIterator();
    je veux savoir le nombre d'éléments ds cells sans parcourir cells
    Est il possible ?
    Non : un Iterator permet seulement de parcourir des données, et ne possèdent pas de notion de taille.

    Comme indiqué Uther, c'est au niveau de l'objet dont tu tires l'iterator, donc "row"...


    a++

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 156
    Par défaut
    Citation Envoyé par adiGuba Voir le message
    Salut,


    Non : un Iterator permet seulement de parcourir des données, et ne possèdent pas de notion de taille.

    Comme indiqué Uther, c'est au niveau de l'objet dont tu tires l'iterator, donc "row"...


    a++
    Merci.
    Donc,pour resoudre mon pb je suis obligé de parcourir ma collection (ici cells) car elle ne possede pas de methode retournant le size.
    Mon pb est que en parcourant mon objet (iterator) pour faire le compte, je peux plus retourner au debut de ma collection pour faire d'autre traitement, comment faire ?
    Y a t il un moyen simpe de dupliquer mon iterator avant que je passe le compte ?
    Merci

  8. #8
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Ce n'est pas sur l'Iterator que tu dois faire cela, mais sur "row".
    Quel est le type de "row" ?

    a++

  9. #9
    Membre Expert Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 690
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 690
    Par défaut
    Il faudrait savoir de quelle classe est row pour savoir s'il possède une méthode clone() qui permettrai de réaliser une copie.

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 156
    Par défaut
    Citation Envoyé par adiGuba Voir le message
    Ce n'est pas sur l'Iterator que tu dois faire cela, mais sur "row".
    Quel est le type de "row" ?

    a++
    C'est HSSFRow. Au fait, je parcours les lignes d'un fichier xsl.
    HSSFRow row = (HSSFRow) rows.next();

  11. #11
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Tail Voir le message
    C'est HSSFRow. Au fait, je parcours les lignes d'un fichier xsl.
    HSSFRow row = (HSSFRow) rows.next();
    En regardant dans sa javadoc je ne vois rien qui pourrait donner la taille... a part peut-être getLastCellNum()]...

    Sinon un double parcours de l'Iterator mais c'est pas très joli

    a++

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 156
    Par défaut
    Citation Envoyé par adiGuba Voir le message
    En regardant dans sa javadoc je ne vois rien qui pourrait donner la taille... a part peut-être getLastCellNum()]...

    Sinon un double parcours de l'Iterator mais c'est pas très joli

    a++
    Merci pour ton aide
    A+

Discussions similaires

  1. Nombre éléments sélectionnés d'une listbox
    Par greg26 dans le forum VB.NET
    Réponses: 5
    Dernier message: 20/01/2019, 10h38
  2. calcul nombre éléments d'un tableau
    Par ghazitun dans le forum C
    Réponses: 8
    Dernier message: 13/01/2015, 12h30
  3. Nombre d'iteration est grand
    Par esperance dans le forum Langage
    Réponses: 2
    Dernier message: 18/01/2007, 14h00
  4. Réponses: 11
    Dernier message: 19/07/2006, 18h28
  5. Nombre d'itérations
    Par harris_macken dans le forum MATLAB
    Réponses: 2
    Dernier message: 28/05/2006, 22h31

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