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 :

Problème type de liste


Sujet :

Collection et Stream Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 72
    Par défaut Problème type de liste
    J'ai le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    List<int> forme = new ArrayList();
    Je ne comprends pas pourquoi il produit une erreur à la compilation
    Message d'erreur : Syntax errot on tokens, delete this token

    Quelle est la bonne syntaxe, je galère depuis ce matin, sans succès

    Merci d'avance

  2. #2
    Membre extrêmement actif Avatar de Mister Nono
    Homme Profil pro
    Ingénieur Mathématiques et Informatique
    Inscrit en
    Septembre 2002
    Messages
    2 242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur Mathématiques et Informatique
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 242
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    List<Integer> forme = new ArrayList();
    Et n'oublies pas le import java.util.ArrayList;

    A+

  3. #3
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,


    En effet les Generics utilisent des objets pour le typage ! Les types primitifs ne peuvent pas être utilisés (par contre ils peuvent l'être par la suite grâce a l'auto-boxing/unboxing).

    Enfin il ne faut pas oublier de typé l'instanciation de l'objet :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    List<Integer> forme = new ArrayList<Integer>();
    a++

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 72
    Par défaut
    Merci, je n'y pensais pas.


    J'ai un nouveau problème lié au type, avec ma liste.

    Je l'ai remplie d'entier (avec la méthode add), puis triée avec la méthode shuffle de Collections.

    Le problème, c'est que quand je veux la transformer en tableau avec la méthode toArray, ça me retourne un objet de type Objet (et non Integer).
    Comment y remédier ?

  5. #5
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    La méthode toArray() renvoi toujours un tableau de type Object car elle ne connait pas le type paramétré.

    Il faut utiliser la version toArray(T[]) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Integer[] array = list.toArray(new Integer[list.size()]);

    a++

  6. #6
    Membre extrêmement actif Avatar de Mister Nono
    Homme Profil pro
    Ingénieur Mathématiques et Informatique
    Inscrit en
    Septembre 2002
    Messages
    2 242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur Mathématiques et Informatique
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 242
    Par défaut
    Oups, j'avais oublié :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    List<Integer> forme = new ArrayList<Integer>();
    A+

Discussions similaires

  1. Quel type de liste choisir ? (Vector, ArrayList, ...)
    Par dinver dans le forum Collection et Stream
    Réponses: 6
    Dernier message: 19/01/2006, 12h09
  2. Problème incompréhensible! Fichier + liste
    Par djsbens dans le forum C
    Réponses: 2
    Dernier message: 07/12/2005, 00h30
  3. [STL]Problème itérateur avec list
    Par Fiquet dans le forum SL & STL
    Réponses: 7
    Dernier message: 03/10/2005, 17h54
  4. [Oracle][Delphi 7] Problème type de champ
    Par tiennos dans le forum Bases de données
    Réponses: 3
    Dernier message: 16/07/2004, 10h17

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