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 :

Taille d'une List<>


Sujet :

avec Java

  1. #1
    Membre actif
    Inscrit en
    Avril 2007
    Messages
    483
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Avril 2007
    Messages : 483
    Points : 234
    Points
    234
    Par défaut Taille d'une List<>
    Bonjour,

    J'aurais voulu savoir s'il existe, comme en C# par exemple, une fonction getLenght() sur les List<> en Java.

    En fait, j'ai un objet dont l'une des propriétés est une List<>, et je voudrais parcourir cette liste uniquement si elle n'est pas vide.

    Seulement je ne trouve rien pour récupérer sa taille

    J'ai essayé des tests de if avec les fonctions size() et isEmpty() mais cela fait buguer le programme dès qu'on arrive à la ligne contenant la condition.

    Quelqu'un a-t-il une idée ?

    Merci d'avance à tous pour vos réponses

  2. #2
    Membre habitué Avatar de yakanet
    Homme Profil pro
    Inscrit en
    Décembre 2005
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39

    Informations forums :
    Inscription : Décembre 2005
    Messages : 137
    Points : 164
    Points
    164
    Par défaut
    Qu'est ce que tu appelles "faire bugger".
    Est ce que cela provoque une exception, et si oui colle la trace d'execution de ton programme.

    Regarde si c'est une nullpointerexception c'est surement parce que tu n'as pas instancié ta liste.

  3. #3
    Membre actif
    Inscrit en
    Avril 2007
    Messages
    483
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Avril 2007
    Messages : 483
    Points : 234
    Points
    234
    Par défaut
    L'erreur générée est bien de type nullpointerexception, mais ce n'est pas un problème d'instanciation et voici pourquoi :

    en fait, je suis en train de créer une interface en swing pour rédiger des articles.

    lorsque j'ajoute un nouveau chapitre, je fais déjà le test avec des syso, et cela marche parfaitement.

    Je suis actuellement en train d'implémenter la possibilité de modifier les données déjà enregistrées dans mes objets, mais cette fois le même teste me renvoie l'erreur nullpointerexception

    Au début, j'ai cru que le passage de paramètres s'était mal fait et qu'il ne récupérait pas les données dans la nouvelle fenetre, mais j'ai essayé d'implémenter la modification du titre de l'article et il n'y a aucun problème, la valeur est bien affichée.

    pour info, voici le code de mon objet article :
    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    package com.labosun.articlewriter.bo;
     
    import java.util.ArrayList;
    import java.util.List;
     
    /**
     * This class represents an Article.<br />
     * <br />
     * To follow the template, this class should be rendered as follow :<br />
     * &lt;html&gt;<br />
     * &nbsp;&nbsp;&nbsp;&nbsp;&lt;head&gt;<br />
     * &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;!-- JS and CSS --&gt;<br />
     * &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;title&gt;{title}&lt;/title&gt;<br />
     * &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;keywords&gt;{keywords}&lt;/keywords&gt;<br />
     * &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;author&gt;{author}&lt;/author&gt;<br />
     * &nbsp;&nbsp;&nbsp;&nbsp;&lt;/head&gt;<br />
     * &nbsp;&nbsp;&nbsp;&nbsp;&lt;body&gt;<br />
     * &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{content}<br />
     * &nbsp;&nbsp;&nbsp;&nbsp;&lt;/body&gt;<br />
     * &lt;/html&gt;<br />
     * 
     * @author Vivien Barousse
     */
    public class Article {
     
        /**
         * Article's title
         */
        private String title;
     
        /**
         * Article's keywords
         */
        private String keywords;
     
        /**
         * Article's author
         */
        private String author;
     
        /**
         * Article's content
         */
        private List<ArticleContent> content;
     
        /**
         * Instanciate a new article
         */
        public Article() {
            content = new ArrayList<ArticleContent>();
        }
     
        /**
         * Instantiate a new article, with specified title, keywords, author and content.
         * Some parameters can eventually be null
         * @param title Article's title
         * @param keywords Article's keywords
         * @param author Article's author
         * @param content Article's content
         */
        public Article(String title, String keywords, String author, List<ArticleContent> content) {
            this.title = title;
            this.keywords = keywords;
            this.author = author;
            this.content = content;
            if (this.content == null)
                this.content = new ArrayList<ArticleContent>();
        }
     
        public String getTitle() {
            return title;
        }
     
        public void setTitle(String title) {
            this.title = title;
        }
     
        public String getKeywords() {
            return keywords;
        }
     
        public void setKeywords(String keywords) {
            this.keywords = keywords;
        }
     
        public String getAuthor() {
            return author;
        }
     
        public void setAuthor(String author) {
            this.author = author;
        }
     
        public List<ArticleContent> getContent() {
            return content;
        }
     
        public void setContent(List<ArticleContent> content) {
            this.content = content;
        }
     
    }
    et celui du premier test que je faisais :
    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
    if (writer.article != null) {
    				for (ArticleContent chapitre : writer.article.getContent()) {
    					System.out.println("titre du chap : " + ((Chapter)chapitre).getTitle());
    					for (ChapterContent souschapitre : ((Chapter)chapitre).getContent()) {
    						System.out.println("titre du souschap : "+((SubChapter)souschapitre).getTitle());
    						for (SubChapterContent bla : ((SubChapter)souschapitre).getContent()) {
    							if (bla instanceof SubSubChapter) {
    								System.out.println("titre du soussouschap : "+((SubSubChapter)bla).getTitle());
    								for (SubSubChapterContent textessssch : ((SubSubChapter)bla).getContent()) {
    									System.out.println("texte du soussouschap : "+((Text)textessssch).getValue());
    								}
    						    } else if (bla instanceof Text) {
    						    	System.out.println("texte du souschapitre : "+((Text)bla).getValue());
    						    }
    						}
    					}
    				}
    			}

    Merci d'avance pour vos réponses

  4. #4
    Membre actif
    Inscrit en
    Avril 2007
    Messages
    483
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Avril 2007
    Messages : 483
    Points : 234
    Points
    234
    Par défaut
    C'est bon.

    En fait, j'ai récupéré toutes les valeurs par le constructeur de l'interface.

    Je ne sais pas trop pourquoi, mais sans cela, les valeurs n'étaient pas accessibles depuis ma frame, mais elles l'étaient quand même depuis mon listener

    Merci quand même pour ton aide yakanet

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

Discussions similaires

  1. Comment adapter la taille d'une liste déroulante
    Par sbelli dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 05/06/2008, 16h04
  2. [Struts] Tester la taille d'une List avec un Tag Logic
    Par yolepro dans le forum Struts 1
    Réponses: 5
    Dernier message: 24/08/2007, 10h28
  3. [JSTL] Taille d'une List
    Par DeeJimy dans le forum Taglibs
    Réponses: 2
    Dernier message: 05/04/2005, 18h58
  4. Taille d'une liste déroulante
    Par pingos dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 23/02/2005, 17h28
  5. [C#] WinForm.Label : connaitre la taille d'une liste de char
    Par lord_paco dans le forum Windows Forms
    Réponses: 4
    Dernier message: 16/11/2004, 23h04

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