Collections en C#

王林
王林original
2024-09-03 15:27:48705parcourir

Les collections peuvent être définies comme un type de classe utilisé en C# pour l'allocation dynamique de mémoire pour le stockage et la récupération du contenu de la classe, et peuvent être utilisées pour effectuer plusieurs opérations. En C#, les collections fonctionnent sous la forme de « classes System.Collections.Generic », « System.Collections. Classes concurrentes » et « Classes System.Collections ». En termes de modèles de stockage, les collections reproduisent la structure de données d'un tableau, et la seule différence est que, contrairement aux tableaux, les collections n'ont pas besoin d'être définies avec la taille requise.

Il existe 3 façons de travailler avec les collections qui sont suivies

  • System.Collections.Classes génériques
  • System.Collections.Concurrent classes
  • Classes System.Collections

Exemples de collections en C#

Vous trouverez ci-dessous quelques exemples de différents types de collections en C# :-

Exemple n°1 – ArrayList

C'est une collection de System.Collections. Il permet de conserver les données de plusieurs types de données et au fur et à mesure que les données sont ajoutées, elles se développent automatiquement.

Code :

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ArrayListExample
{
class Program
{
static void Main(string[] args)
{
var data = new ArrayList();   //arraylist collection
data.Add("Demo");             // add element
data.Add(1);
data.Add(5);
data.Add(26);
data.Add(56.4);
data.Add(32);
data.Remove(5);              // remove element
foreach (object obj in data)   // iteration
{
Console.WriteLine(obj);
Console.ReadLine();
}
}
}
}

Dans l'exemple ci-dessus, il existe une collection de type ArrayList. Il y a quelques éléments dans ArrayList. Add() et Remove() sont les méthodes utilisées respectivement pour ajouter et supprimer les éléments de la collection. foreach est utilisé pour l'itération et affiche les valeurs.

Sortie :

Collections en C#

Exemple n°2 – Nous utiliserons ici l’opération de liste

Il s'agit d'une collection d'espaces de noms System.Collections.Generic.

 Code :

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Collections
{
class Program
{
static void Main(string[] args)
{
var value = new List<string>();       // list collection
value.Add("Cricket");                       // add element
value.Add("Football");
value.Add("Volleyball");
value.Add("Hockey");
value.Add("Basketball");
value.Add("Tennis");
value.Remove("Football");              // remove element
value.Remove("Tennis");
value.Insert(3, "Badminton");         // insert element
foreach (string st in value)
{
Console.WriteLine(st);
Console.ReadLine();
}
}
}
}

Dans l'exemple ci-dessus, la collection est de type liste. Les méthodes Add() et Remove() sont utilisées respectivement pour ajouter ou supprimer des éléments de la liste. Insert() est également utilisé pour insérer l'élément dans la liste à un index défini. Foreach est utilisé pour l'itération et afficher les valeurs.

Sortie : 

Collections en C#

Exemple n°3 : Liste triée

Il se compose de clés et de valeurs dans une collection.

Code :

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Collections
{
class Program
{
static void Main(string[] args)
{
var value = new SortedList<string, int>();            // sortedlist collection
value.Add("java", 3);                                               // add element
value.Add("javascript", 4);
value.Add("c-sharp", 5);
value.Add("dotnet", 25);
value.Add("python", 27);
value.Add("typescript", 57);
foreach (var pair in value)
{
Console.WriteLine(pair);
Console.ReadLine();
}
}
}
}

Dans l'exemple ci-dessus, la collection est de type liste triée. Il existe plusieurs paires de clés et de valeurs dans la liste. Il représente essentiellement la paire triée de clés et de valeurs.

Sortie :

Collections en C#

Exemple n°4 : Liste chaînée

Il permet essentiellement l'accès séquentiel aux éléments.

Code :

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Collections
{
class Program
{
static void Main(string[] args)
{
var value = new LinkedList<int>();             // linkedlist collection
value.AddLast(13);          // add element
value.AddLast(33);
value.AddLast(23);
value.AddLast(51);
value.AddLast(60);
value.AddFirst(4);
value.AddFirst(6);
LinkedListNode<int> node = value.Find(51);         // find the node
value.AddBefore(node, 40);
foreach (int num in value)
{
Console.WriteLine(num);
Console.ReadLine();
}
}
}
}

Dans l'exemple ci-dessus, la collection est de type Linkedlist. AddLast() est utilisé pour placer l'élément en dernière position tandis que AddFirst() est utilisé pour placer l'élément en première position de la liste. Linkedlist se compose d’un nœud. Find() est utilisé pour trouver la valeur et placer la valeur avant elle.

Sortie :

Collections en C#

Exemple n°5 – Dictionnaire

Il se compose d'une paire unique de clés et de valeurs.

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Collections
{
class Program
{
static void Main(string[] args)
{
var pair = new Dictionary<string, string>();           // dictionary collection
pair.Add("in", "India");                                                // add keys and values
pair.Add("af", "Africa");
pair.Add("us", "United States");
pair.Add("ja", "Japan");
pair.Add("ch", "China");
pair.Add("ca", "Canada");
Console.WriteLine("Keys present in the dictionary:");
var key = new List<string>(pair.Keys);
foreach (string k in key)
{
Console.WriteLine("{0}", k);
}
Console.WriteLine("Values present in the dictionary:");
var value = new List<string>(pair.Values);
foreach (string val in value)
{
Console.WriteLine("{0}", val);
}
Console.ReadLine();
}
}
}

Dans l'exemple ci-dessus, la collection est de type dictionnaire qui contient les clés et leurs valeurs. Foreach est utilisé pour l'itération des clés et des valeurs.

Sortie 

Collections en C#

Exemple n°6 – Pile

Il est basé sur la structure Last-In-First-Out. Le dernier élément de la file d'attente est le premier à être supprimé.

Code :

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Collections
{
class Program
{
static void Main(string[] args)
{
var value = new Stack<int>();                          // stack collection
value.Push(10);                                                    // adding the element
value.Push(40);
value.Push(33);
value.Push(62);
value.Push(48);
value.Push(21);
value.Push(31);
Console.WriteLine(value.Pop());
Console.WriteLine(value.Peek());
Console.WriteLine();
foreach (int item in value)
{
Console.WriteLine(item);
Console.ReadLine();
}
}
}
}

Dans l'exemple ci-dessus, la collection est de type stack. Push() est utilisé pour insérer l'élément en haut. Pop() sert à supprimer et à renvoyer l'élément et Peek() sert à renvoyer l'élément supérieur de la pile.

Sortie :

Collections en C#

Exemple n°7 – File d’attente

Il est basé sur la structure premier entré, premier sorti. Le premier élément de la file d'attente est le premier à être supprimé.

Code :

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Collections
{
class Program
{static void Main(string[] args)
{
var value = new Queue<string>();                // queue collection
value.Enqueue("Item 1");                               // add element
value.Enqueue("Item 2");
value.Enqueue("Item 3");
value.Enqueue("Item 4");
value.Enqueue("Item 5");
value.Enqueue("Item 6");
value.Enqueue("Item 7");
Console.WriteLine(value.Dequeue());
Console.WriteLine(value.Peek());
Console.WriteLine();
foreach (string num in value)
{
Console.WriteLine(num);
Console.ReadLine();
}
}
}
}

Dans l'exemple ci-dessus ; la collection est de type file d’attente. Enqueue() est destiné à l'élément d'insertion à la fin de la file d'attente. Dequeue() sert à supprimer l'élément du début de la file d'attente. Peek() est utilisé pour renvoyer l'élément.

Sortie : 

Collections en C#

Il existe donc de nombreuses façons d’utiliser les collections. Les collections sont similaires à un tableau.  Ici nous n’avons pas besoin de définir la taille au préalable contrairement au array.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:Boîte de messages C#Article suivant:Boîte de messages C#