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 avec ArrayList <String>


Sujet :

Collection et Stream Java

  1. #1
    Candidat au Club
    Inscrit en
    Août 2006
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Problème avec ArrayList <String>
    Bonjour à tous,

    Je viens de m'inscrire sur ce forum !!
    Depuis la version JRE/JDK 1.5.06, j'ai un petit souci concernant la compilation de mes classes.
    En effet, avant le système acceptait avant :

    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    private ArrayList finalArray; 
    public ArrayList selectWebInputData  () throws SQLException , Exception  
        {
            finalArray = new ArrayList <String> () ; 
                              //......code
                try
                {
                      while(res.next())
                              {
                            ArrayList tmp=new ArrayList ();
                        tmp.add(res.getString(1)) ;
                                                     //...... code
                                    finalArray.add(tmp) ;
    Pour une compilation sans errures, je suis obligé de faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    private ArrayList <String> finalArray; 
    public ArrayList selectWebInputData  () throws SQLException , Exception  
        {
            finalArray = new ArrayList <String> () ; 
     
                try
                {
                      while(res.next())
                              {
                            ArrayList tmp=new ArrayList <String> ();
                        tmp.add(res.getString(1)) ;
                                    finalArray.add(tmp) ;
    Mais une erreur survient avec : finalArray.add(tmp) ;
    Pourrait-on me donner la syntaxe concernant cette derniere erreur ?

    Merci de votre prompte réponse.

    Bye.

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    429
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 429
    Points : 475
    Points
    475
    Par défaut
    Bonjour,

    finalArray est une ArrayList<String>.
    Tu lui ajoutes tmp, qui devrait donc être une String, mais qui est en fait selon ton programme une ArrayList.
    D'où le problème.
    Sauf erreur.

    Nicolas

  3. #3
    Candidat au Club
    Inscrit en
    Août 2006
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Reponse
    Bonjour,

    OK ..... comme tu viens de le faire remarquer ... String et ArrayList ....
    Merci !!!!

    Mais je me heurte maintenant à un autre problème :
    La fonction suivante me donne un erreur :

    FileNameArray.set(m-1,FileName);
    => cannot find symbol .....

    PS : FileNameArray <ArrayList> = new ArrayList <ArrayList> ();

    Une idée peut-être ?

    Merci !!!

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    429
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 429
    Points : 475
    Points
    475
    Par défaut
    (1) Il y a vraiment marqué
    FileNameArray <ArrayList> = new ArrayList <ArrayList> ()
    dans ton code ?
    Je me serais plutôt attendu à quelque chose du genre :
    ArrayList<ArrayList> FileNameArray = new ArrayList<ArrayList>()

    (2) Quel est la classe de FileName ?

    (3) Usuellement, en Java, les noms de variables ne commencent pas par une majuscule (sauf pour les constantes globales du type MY_CONSTANT).

    Nicolas

  5. #5
    Membre actif
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    194
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juin 2006
    Messages : 194
    Points : 234
    Points
    234
    Par défaut
    Tu as un souci avec la rigueur de tes castings
    Citation Envoyé par fiphi
    FileNameArray <ArrayList> list = new ArrayList <ArrayList> ();
    Ca voudrait dire que la classe ArrayList est une sous-classe de FileNameArray, ce n'est pas le cas. Le compilateur devrait te signaler une erreur à ce niveau.

    [EDIT] Grillé

  6. #6
    Candidat au Club
    Inscrit en
    Août 2006
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Reponse
    Voici le code ....

    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
    static ArrayList <ArrayList> FileNameArray;
     
    Class ....
     
    System.out.println("Saving attachment: "+ part.getFileName());
    FileName = SAVED_ML_FOLDER + part.getFileName();
     
    /* IF MORE ATTACHMENTS */
    ArrayList <String> tmp=new ArrayList <String> (); 
    Integer tempInt = new Integer (m) ; 
    tmp.add (FileName) ;
    FileNameArray.add(tmp)  ;
     
    FileName = (FileName.substring(0,FileName.length()-3)) + "txt" ;
    System.out.println("File Exist = " + fileExist(FileName));
    FileName = "[" + FileName + "]";
    System.out.println("File Name has a new extension = " + FileName);
    //System.out.println("m =" + m);
    FileNameArray.set(m-1,FileName);
    Merci .... j'espère que ceci est plus lisible ....

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    429
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 429
    Points : 475
    Points
    475
    Par défaut
    Je ne comprends pas.

    FileNameArray [tu devrais enlever la majuscule initiale] est une ArrayList d'ArrayList.
    Tu devrais donc lui "set-er" une ArrayList.
    Mais tu "set-tes" FileName [tu devrais enlever la majuscule initiale] qui est... une String !
    FileNameArray.set(m-1,FileName);
    EDIT : ne serait-il pas plus logique que FileNameArray [tu devrais enlever la majuscule initiale] soit une ArrayList<String> ?

  8. #8
    Candidat au Club
    Inscrit en
    Août 2006
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Merci
    Grand merci !!!
    OK maintenant, je passais par une array <string>, puis une array<arraylist>.
    J'ai donc reprogrammé avec seulement array <String> ... et tout est en ordre !!

    Merci à vous ...

    Bye and see next time !

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    429
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 429
    Points : 475
    Points
    475
    Par défaut
    Pour ma part, je t'en prie.

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

Discussions similaires

  1. [débutant] problème avec arraylist
    Par sissi25 dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 17/12/2006, 16h01
  2. [VB.NET]petit problème avec la classe string !!
    Par zouhib dans le forum Windows Forms
    Réponses: 6
    Dernier message: 01/06/2006, 11h58
  3. Réponses: 3
    Dernier message: 26/04/2006, 21h45
  4. Problème avec fonctions et string/char
    Par vdumont dans le forum C++
    Réponses: 6
    Dernier message: 08/04/2006, 16h54
  5. probléme avec une date/string dans un CommandText
    Par critok dans le forum Bases de données
    Réponses: 5
    Dernier message: 09/02/2005, 15h30

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