Maîtriser C# Stack : Push, Pop et Exemples Pratiques
Qu'est-ce qu'une Pile (Stack) en C# ?
Une pile est une collection qui suit le principe Dernier Entré, Premier Sorti (LIFO). Pensez à une pile de livres : seul le livre du dessus peut être retiré. La même logique s'applique à la classe .NET Stack — les éléments sont ajoutés au sommet avec Push et retirés du sommet avec Pop.
Déclaration d'une Pile
Instanciez une pile avec le mot-clé new et assignez-la à une variable.
Stack st = new Stack();
Ajout d'Éléments – Push
La méthode Push place un nouvel élément au sommet de la pile.
st.Push(1);
Suppression d'Éléments – Pop
La méthode Pop retire et retourne l'élément du sommet.
var top = st.Pop();
Autres Opérations Courantes
- Count – Récupère le nombre d'éléments dans la pile.
int total = st.Count;
- Contains – Vérifie si une valeur spécifique existe.
bool hasThree = st.Contains(3);
Exemple Pratique 1 : Utilisation de Push, Count et Contains
Voici une application console qui démontre la création de pile, l'insertion d'éléments, l'énumération et les requêtes de base.

using System;
using System.Collections;
namespace DemoApplication {
class Program {
static void Main(string[] args) {
// 1. Créer une nouvelle pile
Stack st = new Stack();
// 2. Empiler trois entiers
st.Push(1);
st.Push(2);
st.Push(3);
// 3. Énumérer la pile – noter l'ordre LIFO
foreach (Object obj in st) {
Console.WriteLine(obj);
}
// 4. Afficher le nombre total
Console.WriteLine($"\nNombre d'éléments : {st.Count}");
// 5. Vérifier si la pile contient la valeur 3
Console.WriteLine($"La pile contient 3 ? {st.Contains(3)}");
Console.ReadKey();
}
}
}
Explication
- Nous déclarons un
Stacknommést. - Trois entiers sont empilés ; le dernier empilé (3) devient l'élément du sommet.
- L'utilisation de
foreachénumère la pile du sommet vers le bas, affichant 3, 2, 1. Countretourne 3, confirmant trois éléments.Contains(3)retournetrue, prouvant que 3 est présent.
L'exécution de ce programme produit la sortie suivante :

Exemple Pratique 2 : Suppression de l'Élément du Sommet avec Pop
Voici une illustration concise de la méthode Pop en action.

using System;
using System.Collections;
namespace DemoApplication {
class Program {
static void Main(string[] args) {
Stack st = new Stack();
st.Push(1);
st.Push(2);
st.Push(3);
// Retirer l'élément du sommet (3)
st.Pop();
foreach (Object obj in st) {
Console.WriteLine(obj);
}
Console.ReadKey();
}
}
}
Explication
- Après avoir empilé 1, 2 et 3, le sommet de la pile est 3.
- L'appel à
Pop()retire 3, laissant 2 et 1. - L'énumération affiche 2 suivi de 1.
Sortie du programme :

Points Clés à Retenir
- Un
Stackfonctionne selon LIFO. - Utilisez
Pushpour ajouter etPoppour retirer l'élément du sommet. - Assistants supplémentaires :
Countpour la taille,Containspour les vérifications d'appartenance.
Langue C
- Expressions, instructions et blocs C# : Guide complet avec exemples pratiques
- Boucle do-while en C++ : Syntaxe, exemples pratiques et boucles imbriquées
- Maîtriser les pointeurs en C++ : Concepts, exemples et applications pratiques
- Maîtriser le type char en C++ : Déclaration, ASCII et techniques de conversion
- Surcharge d'opérateurs en C++ : Guide pratique avec exemples de code
- Les Fonctions en C++ Expliquées avec des Exemples de Code Pratiques
- Maîtriser les Collections C# : Tutoriel Pratique avec Exemples Réels
- Maîtriser str.count() de Python : Compter caractères et sous-chaînes avec exemples
- Fonction Python round() expliquée avec exemples pratiques