Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > fr.comp.lang.java > #1650
| From | Yliur <yliur@free.fr> |
|---|---|
| Newsgroups | fr.comp.lang.java |
| Subject | Re: Question sur les DefaultListModel |
| Date | 2018-02-06 06:10 +0100 |
| Organization | Groupes francophones par TrigoFACILE |
| Message-ID | <20180206061045.129cf5ec@free.fr> (permalink) |
| References | <5a791646$0$3715$426a74cc@news.free.fr> |
Le 06 Feb 2018 02:43:18 GMT
jp <bloiiing.invalid@yahoo.com> a écrit :
> Bonjour,
>
> Je me pose la question de savoir à quoi sert de créer une List<E> =
> new ArrayList<E>() pour stocker des objets si on utilise un
> DefaultListModel<E> pour représenter une JList<E>? Je pose la
> question car, à première vue, le DefaultListModel est une liste en
> soi. Ou semble- t-il un Vector... Le DefaultListModel<E> dispose à
> peu près des mêmes méthodes que la List<E>. Donc, quel est l'intérêt
> d'avoir en plus une List<E>?
>
> Merci d'avance.
DefaultListModel sert à stocker des données pour l'interface.
ArrayList sert à stocker des données en général.
En général tes données sont stockées dans des structures comme
ArrayList. Puis :
- Soit tu veux les copier dans l'interface et qu'elles y soient
modifiées sans que la liste d'origine soit immédiatement impactée
(jusqu'à une sauvegarde) et dans ce cas tu fais une copie des
données dans un modèle destiné à l'interface (DefaultListModel
par exemple), puis dans l'autre sens quand tu veux les
sauvegarder (pas sur un disque : juste quand tu veux qu'elles
soient validées en mémoire).
- Soit tu veux que les données de la liste soient modifiées
directement via l'interface, auquel cas tu construis un
objet de modèle d'une classe à toi qui en fait va modifier ta
liste (ArrayList) dès que les modifications sont appliquées dans
l'interface.
Il existe un troisième cas :
- Soit tu ne veux pas faire de distinction entre les données de ton
programme et celles affichées dans l'interface, auquel cas tu les
stockes directement dans un modèle, par exemple DefaultListModel.
Ce n'est a priori intéressant que lorsque les données ne sont pas
des données générales manipulées par le programme mais des données
qui ne servent qu'à l'interface par exemple. Ou encore si ton
programme est vraiment très simple.
S'il s'agit des données de ton programme, je te conseille de les
stocker dans une liste distincte de l'interface (ArrayList) et de
choisir une des deux premières options.
Back to fr.comp.lang.java | Previous | Next — Previous in thread | Next in thread | Find similar
Question sur les DefaultListModel jp <bloiiing.invalid@yahoo.com> - 2018-02-06 02:43 +0000
Re: Question sur les DefaultListModel Yliur <yliur@free.fr> - 2018-02-06 06:10 +0100
Re: Question sur les DefaultListModel jp <bloiiing.invalid@yahoo.com> - 2018-02-06 06:22 +0000
Re: Question sur les DefaultListModel Yliur <yliur@free.fr> - 2018-02-06 17:22 +0100
Re: Question sur les DefaultListModel jp <bloiiing.invalid@yahoo.com> - 2018-02-07 03:41 +0000
csiph-web