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

C#에서 두 개의 튜플 비교하는 방법 – == 연산자로 간단하게


C# 7.3 버전부터 튜플(Tuple) 간의 동등성 비교가 공식적으로 지원되기 시작했습니다. 이전 버전에서는 각 요소를 하나씩 꺼내 일일이 비교해야 했지만, 이제는 == 연산자 하나만으로 두 튜플을 손쉽게 비교할 수 있습니다.

== 연산자로 튜플 비교하기

두 튜플이 같은지 확인하려면 일반 변수처럼 == 연산자를 사용하면 됩니다. 예를 들어 다음과 같은 두 개의 튜플이 있다고 가정해 보겠습니다.

var one = (x: 1, y: 2);
var two = (p: 1, q: 2);

이제 == 연산자로 두 튜플을 비교할 수 있습니다.

if (one == two)
    Console.WriteLine("두 튜플은 같습니다(값이 동일합니다).");
else
    Console.WriteLine("두 튜플의 값은 서로 다릅니다.");

전체 예제 코드

using System;

class Program
{
    static void Main()
    {
        var one = (x: 1, y: 2);
        var two = (p: 1, q: 2);

        if (one == two)
            Console.WriteLine("두 튜플은 같습니다(값이 동일합니다).");
        else
            Console.WriteLine("두 튜플의 값은 서로 다릅니다.");
    }
}

출력 결과:

두 튜플은 같습니다(값이 동일합니다).

튜플 비교 시 알아두어야 할 사항

  • 요소 이름은 무시됩니다. 위 예제에서 x, yp, q처럼 이름이 달라도 값과 순서가 같으면 두 튜플은 동일한 것으로 판단됩니다.
  • 값과 순서가 모두 중요합니다. (1, 2)(2, 1)은 순서가 다르므로 서로 다른 튜플입니다.
  • 요소 개수가 같아야 합니다. 요소 개수가 다른 튜플을 비교하면 컴파일 오류가 발생합니다.
  • != 연산자도 사용할 수 있습니다. 두 튜플이 다른지 확인할 때는 != 연산자를 사용하면 됩니다.

이처럼 C# 7.3 이상에서는 튜플 비교가 매우 직관적입니다. 별도의 확장 메서드나 외부 라이브러리 없이 기본 문법만으로 두 튜플의 동등성을 빠르게 확인할 수 있으므로, 데이터 그룹을 다룰 때 유용하게 활용해 보세요.