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 :

Liste et tableau en une seule structure.


Sujet :

Collection et Stream Java

  1. #1
    Membre averti
    Avatar de wafiwafi
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    500
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 500
    Points : 328
    Points
    328
    Par défaut Liste et tableau en une seule structure.
    Bonjour,
    Quelques questions qui méritent débat :
    Pourquoi les autres langages n’ont pas utilisé dès le début un tableau intelligent, c'est-à-dire un tableau qui se redimensionne tout seul et supprime les cases vides automatiquement comme dans le cas de ArrayList?
    Pire ! Pourquoi une liste existe alors qu’un tableau intelligent peut faire l’affaire ? D'ailleurs, une liste peut être implémentée par un tableau ! On peut traiter séquentiellement, s’il le faut, avec un tableau intelligent !
    En résumé, ne serait-il pas plus intéressant de nous proposer un tableau intelligent qui englobe les avantages d’une liste et d’un tableau tout en évitant leurs inconvénients.
    Bien sûr, J'ai mis dans le même sac le fait que les données soient contiguës ou non en mémoire. Après, qui m’empêche de travailler tout le temps en contiguë? De toute façon, le système d'exploitation ne fait qu'à sa sauce!

    Merci d’avance
    L'immortalité existe, elle s'appelle connaissance

  2. #2
    Membre confirmé Avatar de Satch
    Homme Profil pro
    Hypnothérapeute - Magicien
    Inscrit en
    Mars 2004
    Messages
    498
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Suisse

    Informations professionnelles :
    Activité : Hypnothérapeute - Magicien

    Informations forums :
    Inscription : Mars 2004
    Messages : 498
    Points : 645
    Points
    645
    Par défaut
    Citation Envoyé par wafiwafi Voir le message
    En résumé, ne serait-il pas plus intéressant de nous proposer un tableau intelligent qui englobe les avantages d’une liste et d’un tableau tout en évitant leurs inconvénients.
    Justement non.

    Chaque structure de données a ses avantages et ses inconvénients.
    Un tableau est très performant quand il s'agit s'accéder à ses éléments mais est insupportable à utiliser tel quel (taille fixe)
    Une ArrayList va combler ce désavantage, mais au prix d'une baisse de performance.
    Une LinkedList sera plus performante qu'une ArrayList si on ne fait que la parcourir (for each) mais moins si on y accède par index.

    C'est au dev de choisir la meilleur implémentation selon ses besoins.

    EDIT : Pas certain de comprendre ce que tu entends par "liste". Un ArrayList est une Liste !
    Je sais que désormais vivre est un calembour,
    La mort est devenue un état permanent,
    Le monde est aux fantômes, aux hyènes et aux vautours.
    Moi je vous dis bravo et vive la mort.

  3. #3
    Membre averti
    Avatar de wafiwafi
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    500
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 500
    Points : 328
    Points
    328
    Par défaut
    Très intéressant Satch. Merci à toi.
    Je vais approfondir ma réflexion et je reviendrai.
    Cordialement
    L'immortalité existe, elle s'appelle connaissance

  4. #4
    Membre du Club
    Homme Profil pro
    Inscrit en
    Novembre 2013
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Novembre 2013
    Messages : 49
    Points : 68
    Points
    68
    Par défaut
    Et de plus ton tableau intelligent apporte un gros inconvénient par rapport aux listes : Quand tu initialise un tableau, l OS va réserver les cases mémoires nécessaires a ton tableau de façon contiguë mais si tu veux rajouter une case? Tu vas devoir réserver autant de cases que ton précédent tableau + 1 cases ce qui fait qu'il faut en mémoire 2 * la taille de ton tableau + 1, idem si tu veux en enlever une. (Parce que oui le système il fait sa vie pendant que ton application tourne et il peut avoir utilisé les cases mémoires qui bornent ton tableau). Et si le langage, comme le C, n a pas de GC, il faudra certainement pas oublier les free pour éviter les fuites mémoires.

    Je pense personnellement que les listes ont vu le jour car les devs avaient voulu faire des tableaux intelligent justement.

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

Discussions similaires

  1. remplir tableau avec une seule instruction !
    Par tlemcenvisit dans le forum C++
    Réponses: 3
    Dernier message: 21/06/2014, 18h22
  2. Liste de données dans une seule cellule.
    Par azure dans le forum Excel
    Réponses: 2
    Dernier message: 09/04/2008, 18h25
  3. Réponses: 6
    Dernier message: 27/09/2006, 20h27
  4. Réponses: 4
    Dernier message: 15/08/2006, 11h28
  5. Problème de tableau a une seule cellule.
    Par Chouls dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 25/06/2006, 18h15

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