Différents problèmes d'arraylist

[Résolu]
Signaler
Messages postés
41
Date d'inscription
jeudi 7 juin 2007
Statut
Membre
Dernière intervention
15 septembre 2008
-
Messages postés
41
Date d'inscription
jeudi 7 juin 2007
Statut
Membre
Dernière intervention
15 septembre 2008
-
Bonjour, ou plutôt Bonsoir,

Voici donc mes soucis actuels :

j'ai créé une méthode qui me rempli différents Arraylist :
    * soit avec des string
    * soit des int
    * soit des tableaux de float

d'abord je voudrais avoir une confirmation :

pour obtenir un élément i d'un ArrayList AL, dois je faire AL[i] ?? (en VB je faisais AL.Item(i) )

si c'est le cas, comment puis je faire pour récupérer un tableau de float (ft) (et surtout ces valeurs) de mon ArrayList BL, dans un autre tableau de float.

est ce : float[] temp = BL[i] ???

Merci d'avance

RB

4 réponses

Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
39
Ah ok ton ArrayList contient des tableaux..

Dis moi si c'est ça que tu veux :

ArrayList al = new ArrayList( );
al.Add( new float[ ] { 0.0f, 0.1f, 0.2f } );


float[ ] arr = ( float[ ] )al[ 0 ];
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
39
Salut,

Laisse tomber l'ArrayList et passe aux génériques :

List< int > list = new List< int >( );

Pour répondre a tes questions :

1 ) Oui l'indexeur correspond à la propriété Item.

2 ) float[ ] arr = ( float[ ] )al.ToArray( typeof( float ) ); // Si al contient uniquement des float.
Messages postés
41
Date d'inscription
jeudi 7 juin 2007
Statut
Membre
Dernière intervention
15 septembre 2008

Merci Lutinore,

Mais je ne peux pas passer aux génériques car j'ai oublié de dire que j'étais en framework 1.1 (XP SP1)!!

Pour l'instant les réponses m'ont bien aider, mais je voudrais avoir plus de renseignements:

la réponse 2 que tu me donnes me permet de transferer entièrement mon ArrayList al dans un tableau de float arr. Moi, ce que je veux, c'est récupérer UN des tableaux que j'ai mis dans cet ArrayList à l'indice i. Et un truc du genre :

float[ ] arr = ( float[ ] )al [i] .ToArray( typeof( float ) );

ne marche pas.

en VB je faisais un truc du genre Dim arr() As Single = al.Item(i) et j'obtenais dans arr() toutes les valeurs du tableau que j'avais passer.

Y a t il une solution ??

RB
Messages postés
41
Date d'inscription
jeudi 7 juin 2007
Statut
Membre
Dernière intervention
15 septembre 2008

Merci Lutinor,

c'est bien ça que je cherchais !!

RB