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 :

ArrayDeque problème capacité


Sujet :

Langage Java

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

    Informations forums :
    Inscription : Novembre 2009
    Messages : 315
    Par défaut ArrayDeque problème capacité
    Bonjour, je teste ArrayDeque

    VOICI une méthode d'ajout

    boolean offer(E élément) qui provient de l'interface Queue et qui est aussi disponible pour ArrayDeque

    Normalement si la queue est pleine, la méthode renvoie false.

    Or quand je teste, la méthode me renvoie TRUE

    Voici le code, Merci de vos suggestions

    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
    26
    27
    28
    29
    30
    31
     
    package effacer;
     
    import java.util.ArrayDeque;
    import java.util.Iterator;
     
    class File
    {	
    	int i;
    	public File(int i){
    		this.i = i;
    	}
    }
     
    public class Test_ArrayDeque {
    	public static void main(String[] args) {
     
     
    		// Test capacité 
    		System.out.println("// Test capacité");
    		ArrayDeque<File> arrayDeque2 = new ArrayDeque<File>(5);
    		for (int i = 0; i < 5; i++) {
    			arrayDeque2.offer(new File(i));
    		}
    		System.out.println(arrayDeque2);
    		System.out.println(arrayDeque2.size());
    		System.out.println(arrayDeque2.offer(new File(6)));
    		System.out.println(arrayDeque2.size());
     
    	}
    }

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 483
    Par défaut
    Comme le dit très bien la doc de ArrayDeque, il n'y a pas de limite de taille, le ArrayDeque grand en fonction des besoins. Donc oui, offer renverra toujours true et stockera toujours le nouvel élément.

    Le constructeur ne fait que prendre une taille initiale (utile quand on a une idée du maximum qu'on veux stocker, ca évite les réallocations de tableau pour agrandir le buffer interne)

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

    Informations forums :
    Inscription : Novembre 2009
    Messages : 315
    Par défaut Le constructeur ne fait que prendre une taille initiale (utile quand on a une idée du maximum qu'on veux stock
    Ok mais dans la doc (livre de Delannoy) on indique des valeurs de retour si la queue est pleine or je n'obtiens pas ces valeurs de retour

    J'ai aussi fait l'essai avec addFirst() et addLast() alors que la queue est pleine et pas d'exception ... bizarre

    Delannoy ANNEXE G :

    Deque <E> (Queue)
    void addFirst (E elem) // ajoute elem en tête
    // (exception si queue pleine)
    void addLast (E elem) // ajoute elem en queue
    // (exception si queue pleine)

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 585
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 585
    Par défaut
    Une ArrayDeque n'est jamais pleine, puisqu'elle n'a pas de taille limite.

    Ces remarques en cas de queue pleine, ne s'appliquent que pour les queues auxquelles ça peut arriver, d'être pleines.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

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

    Informations forums :
    Inscription : Novembre 2009
    Messages : 315
    Par défaut Bonjour Thelvin, bonjour Tchize
    "Ces remarques en cas de queue pleine, ne s'appliquent que pour les queues auxquelles ça peut arriver, d'être pleines. "

    Tu peux me donner un précision pour les "queues pleines"
    Quand arrive-t-il qu'elles soient pleines alors?

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 483
    Par défaut
    quand tu prend une LinkedBlockingQueue avec une taille maximale, par exemple.

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

    Informations forums :
    Inscription : Novembre 2009
    Messages : 315
    Par défaut
    Merci à vous deux !!

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

Discussions similaires

  1. Problème capacité mémoire
    Par stefsas dans le forum SAS Base
    Réponses: 6
    Dernier message: 16/09/2008, 13h59
  2. Problème de capacité de base Access
    Par MANDET dans le forum Access
    Réponses: 2
    Dernier message: 09/06/2006, 16h53
  3. [VBA-E] Problème de dépassement de capacité sous Excel
    Par Nicolas67 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 30/05/2006, 11h36
  4. [VB]Défilement de controles, problèmes de capacité
    Par flogreg dans le forum VB 6 et antérieur
    Réponses: 19
    Dernier message: 13/02/2006, 18h19
  5. Problème de dépassement de la capacité d'un TImage
    Par fred.mathiot dans le forum Composants VCL
    Réponses: 7
    Dernier message: 28/12/2005, 12h13

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