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

Langage Java Discussion :

PriorityQueue et peek()


Sujet :

Langage Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    315
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2009
    Messages : 315
    Points : 114
    Points
    114
    Par défaut PriorityQueue et peek()
    Bonjour,

    Voici un Post de réponse rédigé par AdiGuba 26/11/2008, 13h56

    "Salut,

    L'ordre des PriorityQueue est basé sur l'ordre naturel des éléments, c'est à dire par la valeur renvoyé par la méthode compareTo() (il faut alors que l'objet implémente Comparable).

    Pour les String il s'agit donc de l'ordre "alphabétique" (plus précisément selon la valeur unicode des caractères).

    Par contre attention car cet ordre ne concerne que les méthodes propres aux Queues (peek(), pool(), etc.).

    Les méthodes d'itération via l'Iterator ou d'autre méthode basé là dessus (comme toString()) ne respectent pas cet ordre et dépendent de l'organisation interne de la classe..."


    Question :
    Je désire parcourir une PriorityQueue sans effacer d'element et en conservant l'ordre naturel
    J'utilse donc peek() et NON poll()

    MAIS Comment parcourir une PriorityQueue avec peek() , je reste tjrs sur le premier element ??

    Merci

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Pas possible.

    Par contre, tu peux créer une SortedList pour résoudre ton problème


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SortedList list = ....;
    list .addAll(queue);
    for (Object i : list){
     ....
    }

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    315
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2009
    Messages : 315
    Points : 114
    Points
    114
    Par défaut Bonjour Tchize
    Ok --> pour le passage vers une List

    mais je me demandais ds quelles circonstances on utilise peek() ??

    Pour vérifier si dernier élément de queue sans la vider complètement ??

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Tu l'utilise dès que tu as besoin de consulter le dernier élément sans vouloir le sortir.
    Exemple typique, la queue est utilisé pour des traitements long (plusieurs minutes) et tu veux afficher à l'utilisateur non seulement les éléments en court de traitement par les thread mais aussi quel sera le prochain.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    315
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2009
    Messages : 315
    Points : 114
    Points
    114
    Par défaut
    Merci a+ tard

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

Discussions similaires

  1. Peek et Poke
    Par gbdivers dans le forum Qt
    Réponses: 0
    Dernier message: 26/10/2010, 23h55
  2. PriorityQueue: Comment connaitre l'ordre de sortie
    Par lucas.pouzac dans le forum Collection et Stream
    Réponses: 5
    Dernier message: 15/09/2009, 16h29
  3. probleme style peek a boo avec JS et CSS
    Par very dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 01/09/2006, 19h49

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