Blog

Classe Stack em C#

Nesta publicação aprende-se a trabalhar com a classe Stack para que se possa usar esses mesmos conhecimentos e assim evoluir.

  • esta classe é basicamente uma pilha (devido a sua forma de funcionamento) e representa uma coleção do tipo LIFO (Last In - First Out), ou seja, o último valor que entrar será sempre o primeiro a sair;
  • esses valores que compõem uma stack são chamados de elementos.
Stack (objeto).Push() Adiciona um objeto na parte superior da stack
Stack (objeto).Pop() Remove e retorna o objeto na parte superior da stack
Stack (objeto).Peek() Retorna o objeto na parte superior da stack sem o remover
using System;
using System.Collections.Generic;

namespace Base {
  class ClasseStack {
    private Stack<int> pilha = new Stack<int>();
    private const int Multiplicador = 10;
    private int numero = 1;

    public void Run() {
      for (int indice = 1; indice <= 5; indice++) {
        pilha.Push(numero);
        numero *= Multiplicador;
      }

      ImprimirPilha();

      Console.WriteLine($"\nA remover o número {pilha.Pop()} da pilha com o método Pop().\n");

      ImprimirPilha();

      Console.WriteLine($"\nO número que se encontra na parte superior da pilha é o {pilha.Peek()}.");
    }

    private void ImprimirPilha() {
      foreach (var numero in pilha)
        Console.WriteLine(numero);
    }
  }
}

/*
  10000
  1000
  100
  10
  1

  A remover o número 10000 da pilha com o método Pop().

  1000
  100
  10
  1

  O número que se encontra na parte superior da pilha é o 1000.
*/

Não te esqueças de assistir ao vídeo e podes sempre ler esta publicação em inglês.

Happy coding!

Anterior Seguinte