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

Java Discussion :

[Conception] Listes chainées avec plusieurs champs


Sujet :

Java

  1. #1
    Membre éprouvé
    Profil pro
    Eleveur de cornichons
    Inscrit en
    Juin 2002
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Eleveur de cornichons
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 074
    Points : 1 166
    Points
    1 166
    Par défaut [Conception] Listes chainées avec plusieurs champs
    Bonjour

    J'ai repris un peu la prog Java, enfin juste pour faire un petit exercice. Je n'avais jamais utilisé les listes chainées (sauf la classe Vector) auparavant et là, je ne vois pas comment résoudre mon problème.
    Pour ceux qui connaissent le langage C, on peut définir une structure chainée avec 2 champs, de type integer par exemple.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    struct list{
    int a ; int b ;
    struct list *next ;
    };
    En Java, je compte utiliser la classe ArrayList pour faire la même chose. Seulement je vois que les méthodes de cette classe ne prennent que des objets Object ce qui fait que je ne vois pas comment définir 2 variables par maillon.
    Merci de m'indiquer la démarche à suivre.

    Nas'

  2. #2
    Expert éminent sénior
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Points : 21 324
    Points
    21 324
    Par défaut
    J'ai pas trop compris...

    Tu peut faire une arrayList d'un tableau :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ArrayList<Object[]> list = new ArrayList<Objec¨[]>

  3. #3
    Membre confirmé Avatar de Scorpyosis
    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2004
    Messages : 365
    Points : 570
    Points
    570
    Par défaut
    Crée une classe qui représentent tes entiers genre :
    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
     
    public class MesEntiers
    {
      private int entier1;
      private int entier2;
     
     public MesEntiers(int a, int b)
     {
       this.entier1 = a ;
       this.entier2 = b ;
     }
     
     public int getEntier1()
     { return this.entier1 ; }
     
     public int getEntier2()
     { return this.entier2 ; }
     
     //tu fais les setEntier si tu en as besoin
    }
    Cette classe te permettra d'instancier des objets que tu pourras stocker dans ton ArrayList. De plus avec java5, tu peux specifier quel type d'objet tu stockes dans ton ArrayList, par exemple ca donnerait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     ArrayList<MesEntiers> ar = new ArrayList<MesEntiers>() ;
    Ainsi tu précises, que tu ne stockera que des objets de type MesEntiers, et quand tu feras un get() sur ton ArrayList, il te retournera un objet MesEntiers et donc plus besoin de cast !

  4. #4
    Membre éprouvé
    Profil pro
    Eleveur de cornichons
    Inscrit en
    Juin 2002
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Eleveur de cornichons
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 074
    Points : 1 166
    Points
    1 166
    Par défaut
    Ah, il fut un temps où j'aurais eu l'intelligence de penser à faire ça
    Je vous remercie pour votre aide. J'ai finalement opté pour la méthode avec la classe parce que ça me permet de rentre le code plus clair. Merci

    Nas'

  5. #5
    Membre éprouvé
    Profil pro
    Eleveur de cornichons
    Inscrit en
    Juin 2002
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Eleveur de cornichons
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 074
    Points : 1 166
    Points
    1 166
    Par défaut
    Au fait, j'ai l'impression qu'avec Java5, on doit spécifier le type qu'on utilise avec les structures de données du style ArrayList sinon on a un warning. Mais comment on fait si on souhaite utiliser le type "int" ? Doit-on forcément passer par la classe "Integer"? Ou bien on laisse le warning sans s'en préoccuper?

    Nas'

  6. #6
    Expert éminent sénior
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Points : 21 324
    Points
    21 324
    Par défaut
    Tu peut laisser le warning mais bon c'est mieux de spécifier

    pour un int ouais tu peut employer Integer

  7. #7
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    De toute façon depuis la version 1.5 les conversions Integer <-> int sont implicites

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

Discussions similaires

  1. [AC-2007] Calcul dans une zone de liste (avec plusieurs champs)
    Par Rayan1 dans le forum IHM
    Réponses: 3
    Dernier message: 25/09/2014, 08h23
  2. [WD15] Liste avec plusieurs champs d'une table affichés
    Par karibou_47 dans le forum WinDev
    Réponses: 2
    Dernier message: 07/12/2011, 17h51
  3. [Tableaux] avec plusieurs champs Parcourir
    Par Camille.CWS dans le forum Langage
    Réponses: 9
    Dernier message: 27/02/2007, 11h29
  4. Réponses: 3
    Dernier message: 19/11/2004, 21h48
  5. liste deroulante avec plusieurs champs
    Par JulienT dans le forum Struts 1
    Réponses: 4
    Dernier message: 20/04/2004, 17h17

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