Collections
abdellah_madani@[Link]
ArrayList
La classe ArrayList peut servir à une
implémentation de la liste chaînée uni ou bi-
directionnelle;
un ArrayList contient des éléments de type
Object
La liste peut être hétérogène
ArrayList
int Add( object value ):Ajoute un l'objet value à la fin de
ArrayList.
void Insert(int index, object value):Insère un élément dans
ArrayList à l'index spécifié.
void Clear():Supprime tous les éléments de ArrayList.
void Remove(object obj):Supprime la première occurrence d'un
objet spécifique de ArrayList.
void Sort():Trie les éléments dans l'intégralité de ArrayList à
l'aide de l'implémentation.
ArrayList Table:Table[i] = ....: Accès en lecture et en écriture à
un élément quelconque de rang i du tableau par Table[i]
ArrayList
static void afficheVector (ArrayList vect)
{
[Link]( "Vecteur taille = " + [Link] );
for ( int i = 0; i<= [Link]-1; i++ )
[Link]( "Vecteur[" + i + "]=" + (string)vect[ i ] );
}
static void VectorInitialiser ( )
{
ArrayList table = new ArrayList( );
string str = "val:";
for ( int i = 0; i<=5; i++ )
[Link](str + [Link]( ) );
afficheVector(table);
}
SortedList
Si l'on souhaite gérer une liste triée par clef,
il est possible d'utiliser la classe SortedList
Cette classe représente une collection de
paires valeur-clé
Cette liste est triée par les clés toutes
différentes et accessibles par clé et par index
SortedList
int Add( object key,object value ):Ajoute un élément
avec la clé key et la valeur value spécifiées dans le
SortedList.
void CopyTo( Array array,int arrayIndex ):Copie les
éléments du SortedList dans une instance Array
array unidimensionnelle à l'index arrayIndex spécifié
(valeur de l'index dans array où la copie commence).
void Clear( ):Supprime tous les éléments de
SortedList.
object GetByIndex( int index ):Obtient la valeur à
l'index spécifié de la liste SortedList.
SortedList
object GetKey( int index ):Obtient la clé à l'index
spécifié de SortedList.
int IndexOfValue( object value ):Retourne l'index de
base zéro de la première occurrence de la valeur
value spécifiée dans SortedList.
int IndexOfKey( object key ):Retourne l'index de
base zéro de la clé key spécifiée dans SortedList.
void Remove( object key ):Supprime de SortedList
l'élément ayant la clé key spécifiée.
void RemoveAt( int index ):Supprime l'élément au
niveau de l'index spécifié de SortedList.
SortedList
SortedList Liste = new SortedList ( );
[Link](100,"…");[Link](45,"…");
for (int i=0; i<[Link]; i++) //Balayage par index :
[Link]( (string)[Link](i) );
foreach(string s in [Link]) //Balayage des valeurs :
[Link]( s );
foreach(object k in [Link]) //Balayage des clefs :
[Link]( Liste[k] );
Pile
La classe Stack représente une pile LIFO (Last In
First Out)
Elle présente plusieurs méthodes :
– object Peek ( ):Renvoie la référence de l'objet situé au
sommet de la pile.
– object Pop( ):Dépile la pile (l'objet au sommet est enlevé et
renvoyé)
– void Push( object elt ):Empile un objet au sommet de la pile.
– object [ ] ToArray( ):Recopie toute la pile dans un tableau
d'objet depuis le sommet jusqu'au fond de la pile (dans
l'ordre du dépilement).
File
La classe Queue représente une file FIFO (First In
First Out)
Elle dispose de plsieurs méthodes :
– object Peek ():Renvoie la référence de l'objet situé au
sommet de la file.
– object Dequeue():L'objet au début de la file est enlevé et
renvoyé.
– void Enqueue (object elt):Ajoute un objet à la fin de la file.
– object [ ] ToArray():Recopie toute la file dans un tableau
d'objet depuis le début de la file jusqu'à la fin de la file.