Vous êtes sur la page 1sur 4

'Imports System.

Collections
Module Module1
Sub Main()
'----------------------------------gestion des
tableaux---------------
'Dim jours() As String = {"lundi", "mardi", "mercredi", "jeudi",
"vendredi", "samedi", "dimanche"}
'Dim i As Integer

'Array.Clear(jours, 1, 2)
'effece deux élements du tableau jours en commençant par l'élement
d'indice 1

'Array.Reverse(jours, 1, 3)
'inverse 3 élements du tableau en commençant par l'élement 1

'Array.Sort(jours)
'trie le tableau

'MsgBox(Array.IndexOf(jours, "jeudi"))
'retourne l'indice ou se trouve une valeur

'Dim jours2(6) As String


'Array.Copy(jours, 2, jours2, 3, 4)
'copie 4 élements du tabeau jours vers le tableau jours2, les 4
éléments sont récupérés apartir de l'indice 2
'ces 4 éléments sont copiés dans le tableau jours 2 àpartir de
l'indice 3

'Array.Sort(jours)
'MsgBox(Array.BinarySearch(jours, "mardi"))
'retourne l'indice d'un valeur dans un tableau trié

'For i = 0 To 6
' Console.WriteLine(jours(i))
'Next
'---------------------------------------------------------------------
'----------------------------------les
collections--------------------
'les collections sont des groupes de données dont on connait pas la
valeur initiale
'c'est un groupe de taille dite dynamique qui commence par 1

'Dim col As New Microsoft.VisualBasic.Collection


'col.Add("x", 1)
''ajouter une valeur à la collection avec sa clé
'col.Add("y", 2)
'col.Add("z", 3)

'MsgBox(col.Item(1))
'retourne la valeur qui se trouve dans l'indice passé en paramètre

'col.Remove(2)
'supprimer la valeur d'indice 2

'MsgBox(col.Count)
'retournne la taile de la collection

'col.Clear()
'vider la collection

'MsgBox(col.Contains(1))
'retourne s'il y'a un élement dans l'indice donné en paramètre

'retourne true si la valeur est dans la collection


'Dim i As Integer
'For i = 1 To col.Count
' Console.WriteLine(col.Item(i))
'Next

'---------------------------------------------------------------------
'----------------------------------les hashtable----------------------
'les hashtable sont aussi des collections qui continnent des couples
clé valeur

'Dim h As New Hashtable


'h.Add(0, "a")
''ajoute dans le hashtable une valeur avec sa clé
'h.Add(1, 55)
'h.Add(2, "c")
'h.Add(3, "d")

'MsgBox(h.Item(1))
'retourne la valeur qui correspond à la clé numéro 2

'MsgBox(h.ContainsKey(2))
'retourne true si la clé se trouve dans le hashtable

'MsgBox(h.ContainsValue("b"))
'retourne true si la valeur se trouve dans le hashtable

'h.Remove(3)
'supprime la clé 3 avec sa valeur

'h.Clear()
'vide le hashtable

'Dim i As Integer
'For i = 0 To h.Count - 1
' Console.WriteLine(h.Item(i))
'Next

'---------------------------------------------------------------------
'----------------------------------les arrayliste---------------------
'c'est un cas particulière des collections ont peut y ajouter des
éléments de différents type
'on peut ajouter le 1er element chaine le 2em entier etc

'Dim al As New ArrayList


'al.Add("bonjour")
''ajoute une valeur à la collection
'al.Add(3)
'al.Add("bonsoir")
'al.Add(1)

'al.Remove("bonjour")
'supprime un élément de la liste

'al.RemoveAt(2)
'supprime l'element d'indice 2

'MsgBox(al.Count)
'retourne la taille de la collection

'al.Sort()
'trier la collection qui doit avoir des élements de meme type

'MsgBox(al.Contains(3))
'retourne true si la valeur se trouve dans la collection

'al.Insert(2, "salut")
'insere un élément dans l'indice passé en paramètre

'al.Clear()
'vider la collection

'MsgBox(al.Item(2))
'retourne la valeur de l'élement d'indice 2

'Dim i As Integer
'For i = 0 To al.Count - 1
' Console.WriteLine(al(i))
'Next

'-----------------------------------la classe stack-------------------


'---la classe stack est une pile LIFO premier entrée dernier sortie---
'Dim pile As New Stack(5)
'pile.Push(4) 'permet d'inserer 4 en tete de la pile
'pile.Push("s")

'MsgBox(pile.Peek)
'affiche l'élément en tet de pile dans notre cas elle affiche S car
c'est le dernier élément inséré

'MsgBox(pile.Pop)
'affiche l'element au sommet de la pile et elle le supprime de la pile

'MsgBox(pile.Count)
'retourne la taille de la pile

'MsgBox(pile.Contains("s"))
'retourne true si l'élement est dans la pile

'-----------------------------------la classe queue-------------------


'--la classe queue est une pile FIFO premier entrée premier sortie----

'Dim liste As New Queue


'liste.Enqueue("a")
'permet d'ajouter la valeure dans la liste
'liste.Enqueue("b")

'liste.Dequeue()
'retourne l'element du sommet et le supprime

'MsgBox(liste.Peek())
'retourne le sommet de la liste

'MsgBox(liste.Count)
'retourne la taille de la liste

'MsgBox(liste.Contains("a"))
'retourne true si l'element est dans la liste

'liste.Clear()
'vider la liste

Console.ReadLine()

End Sub

End Module