C# 문법 3주차 - 제너릭

Amberjack·2024년 1월 2일
0

C# 문법

목록 보기
19/44

제너릭

제너릭 사용법

  • 제너릭은 클래스나 메서드를 일반화시켜 다양한 자료형에 대응할 수 있는 기능!
  • 제너릭을 사용하여 코드의 재사용성을 높일 수 있다.
  • C#에서는 <T>와 같은 형태의 키워드를 이용하여 제너릭을 선언한다.
  • 제너릭 클래스나 메서드에서 사용할 자료형은 선언 시점이 아닌 사용 시점에 결정된다!
  • 제너릭 클래스나 메서드를 사용할 때는 <T> 대신 구체적인 자료형을 넣어준다.

제너릭을 이용하여 스택 만들기

// 제너릭 클래스 선언 예시
class Stack<T>
{
    private T[] elements;
    private int top;

    public Stack()
    {
        elements = new T[100];
        top = 0;
    }

    public void Push(T item)
    {
        elements[top++] = item;
    }

    public T Pop()
    {
        return elements[--top];
    }
}

// 제너릭 클래스 사용 예시
Stack<int> intStack = new Stack<int>();		// 사용 시, 구체적인 자료형 int를 넣어주는 모습!
intStack.Push(1);
intStack.Push(2);
intStack.Push(3);
Console.WriteLine(intStack.Pop());
// 출력 결과는 3

제너릭은 두 개 이상 사용하기

class Pair<T1, T2>
{
    public T1 First { get; set; }
    public T2 Second { get; set; }

    public Pair(T1 first, T2 second)
    {
        First = first;
        Second = second;
    }

    public void Display()
    {
        Console.WriteLine($"First: {First}, Second: {Second}");
    }
}

static void Main(string[] args)
{
	Pair<int, string> pair1 = new Pair<int, string>(1, "One");
	pair1.Display();

	Pair<double, bool> pair2 = new Pair<double, bool>(3.14, true);
	pair2.Display();
}

실행 화면 ▼

0개의 댓글