Computer >> 컴퓨터 >  >> 프로그램 작성 >> C#

C#에서 스택 클래스를 사용하는 방법은 무엇입니까?


스택 클래스는 C#에서 객체의 후입선출을 나타내는 데 사용됩니다. 책 더미와 같이 마지막에 추가한 요소를 먼저 제거하고 싶을 때 사용합니다.

다음은 Stack 클래스의 메소드입니다 -

Sr.No 방법 및 설명
1 공개 가상 무효 Clear();
스택에서 모든 요소를 ​​제거합니다.
2 공개 가상 bool 포함(객체 obj);
요소가 스택에 있는지 여부를 결정합니다.
3 공개 가상 객체 Peek();
스택의 맨 위에 있는 개체를 제거하지 않고 반환합니다.
4 공개 가상 객체 Pop();
스택의 맨 위에 있는 개체를 제거하고 반환합니다.
5 공개 가상 무효 푸시(객체 obj);
스택의 맨 위에 개체를 삽입합니다.
6 공개 가상 객체[] ToArray();
스택을 새 배열에 복사합니다.

다음은 Stack 클래스의 속성입니다. 개수: 스택의 요소 수를 가져옵니다.

다음은 Stack 클래스와 해당 Push() 및 Pop() 메서드를 사용하는 방법을 보여주는 예입니다.

예시

using System;
using System.Collections;

namespace CollectionsApplication {
   class Program {
      static void Main(string[] args) {
         Stack st = new Stack();

         st.Push('A');
         st.Push('B');
         st.Push('C');
         st.Push('D');

         Console.WriteLine("Current stack: ");
         foreach (char c in st) {
            Console.Write(c + " ");
         }
         Console.WriteLine();

         st.Push('P');
         st.Push('Q');
         Console.WriteLine("The next poppable value in stack: {0}", st.Peek());
         Console.WriteLine("Current stack: ");
     
         foreach (char c in st) {
            Console.Write(c + " ");
         }

         Console.WriteLine();

         Console.WriteLine("Removing values....");
         st.Pop();
         st.Pop();
         st.Pop();

         Console.WriteLine("Current stack: ");
         foreach (char c in st) {
            Console.Write(c + " ");
         }
      }
   }
}

출력

Current stack:
D C B A
The next poppable value in stack: Q
Current stack:
Q P D C B A
Removing values....
Current stack:
C B A