Stack 클래스
*push -> 개체를 stack에 맨 위에 삽입한다
*peek -> 개체를 제거하지 않고 반환
*pop -> 개체를 제거하고 반환
*clear -> 개체를 모두 제거
네임 스페이스 : system.Collections
IEnumrable 구현 한다
(foreach사용 가능)
컬렉션 사용 전 반드시 초기화 해야 한다
Stack stack = new Stack();
주요 속성
count : stack에 포함돼 요소 수를 가져온다
주요메서드
Push(Object) : 개체를 stack의 맨위에 삽입한다
pop() : stack의 맨위에 개체를 제거하고 반환한다
예외 : stack이 비어있는 경우 (InvalidOperationException)
Peek() : 스택의 맨 위에서 개체를 제거하지 않고 반환한다
예외 : Stack이 비어있는 경우 (InvalidOperationException)
Clear() : 스택의 요소를 모두 제거한다
----------------------------------------------------------------------------------------------------------------------
using Hellowrold;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
class Program
{
static void Main(string[] args)
{
//스택 변수 선언
Stack stack;
//스택 인스턴스 생성
stack = new Stack();
//데이터를 삽입
stack.Push(1);
stack.Push(1.2f);
stack.Push(true);
stack.Push("A");
stack.Push("이지훈");
stack.Push(null);
stack.Push(new Item());
Console.WriteLine("count: {0}", stack.Count);
object element = stack.Pop();
Console.WriteLine("elemant: {0}", element);
Console.WriteLine("count: {0}", stack.Count);
element = stack.Peek();
Console.WriteLine("elemant: {0}", element);
Console.WriteLine("count: {0}", stack.Count);
foreach (object obj in stack)
{
Console.WriteLine("obj: {0}", obj);
}
stack.Clear();
Console.WriteLine("count: {0}", stack.Count);
//stack에 요소가 0일 경우
//stack.Pop(); //System.InvalidOperationException: 스택이 비어 있습니다.
//stack.Peek(); //System.InvalidOperationException: 스택이 비어 있습니다.
}
}
'c# > 수업 내용' 카테고리의 다른 글
Hachtable 클래스와 기본 문제 (0) | 2021.09.02 |
---|---|
Queue 클래스 기본 문제 (0) | 2021.09.02 |
ArrayList로 인벤토리 만들기 (해석해보고 하는중) (0) | 2021.09.02 |
ArrayList 클래스 (ADD) (0) | 2021.09.02 |
c# 컬렉션 (0) | 2021.09.02 |