Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C#에서 튜플을 빈 튜플로 초기화하는 방법 완벽 가이드

C#에서 튜플을 빈(비어 있는) 상태로 초기화하려면 다음과 같이 변수를 선언만 하면 됩니다.

Tuple<string, string> myTuple;

이렇게 선언만 한 튜플은 아직 인스턴스가 생성되지 않았기 때문에 실질적으로 null 상태입니다. 따라서 튜플의 값을 사용하기 전에는 반드시 null 여부를 확인하는 것이 안전합니다.

튜플의 null 값 확인 예제

아래 예제는 튜플을 생성할 때 두 번째 요소에 null을 할당한 후, 각 요소(Item1, Item2)의 값을 조건문으로 확인하는 방법을 보여줍니다.

using System;

namespace Demo {
    class Program {
        static void Main(string[] args) {
            Tuple<int, string> tuple = new Tuple<int, string>(10, null);

            if (tuple.Item1 == 10) {
                Console.WriteLine(tuple.Item1);
            }

            if (tuple.Item2 == null) {
                Console.WriteLine("Item is null");
            }
        }
    }
}

코드 설명

  • Item1: 첫 번째 요소에 정수 10이 저장되어 있으므로 조건식이 참이 되어 화면에 10이 출력됩니다.
  • Item2: 두 번째 요소가 null이므로 "Item is null"이라는 메시지가 출력됩니다.

실행 결과는 다음과 같습니다.

10
Item is null

참고: C# 7.0 이상에서는 ValueTuple 활용

C# 7.0부터는 기존의 Tuple 클래스 대신 더 간결하고 성능이 좋은 ValueTuple(값 튜플) 문법을 사용할 수 있습니다. 값 튜플은 참조 형식이 아닌 값 형식으로 스택에 할당되므로 가비지 컬렉션 부담이 적습니다.

// 기본값으로 초기화된 값 튜플
(int, string) valueTuple = default;

if (valueTuple.Item1 == 0) {
    Console.WriteLine("첫 번째 요소는 기본값입니다.");
}

이처럼 default 키워드를 사용하면 값 튜플도 손쉽게 빈 상태로 초기화할 수 있으며, 명명된 요소를 활용하면 코드 가독성을 더욱 높일 수 있습니다.