C#에서 UInt64.Equals() 메서드는 현재 인스턴스가 지정된 객체 또는 UInt64 값과 같은지 여부를 나타내는 값을 반환합니다. 두 값이 같으면 true, 다르면 false를 리턴하며, 이를 활용해 숫자 비교 로직을 간단하게 구현할 수 있습니다.
예제 1: 서로 다른 값 비교
다음 예제에서는 서로 다른 두 개의 ulong 값을 비교합니다.
using System;
public class Demo {
public static void Main() {
ulong val1 = 44565777;
ulong val2 = 77878787;
bool res = val1.Equals(val2);
Console.WriteLine("반환값(비교 결과) = " + res);
if (res)
Console.WriteLine("val1 = val2");
else
Console.WriteLine("val1 != val2");
}
}출력 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
반환값(비교 결과) = False val1 != val2
두 값이 서로 다르기 때문에 Equals() 메서드는 false를 반환하고, 조건문의 else 블록이 실행됩니다.
예제 2: 동일한 값 비교
이번에는 값이 완전히 같은 경우를 살펴보겠습니다.
using System;
public class Demo {
public static void Main() {
ulong val1 = 78796878;
ulong val2 = 78796878;
bool res = val1.Equals(val2);
Console.WriteLine("반환값(비교 결과) = " + res);
if (res)
Console.WriteLine("val1 = val2");
else
Console.WriteLine("val1 != val2");
}
}출력 결과
실행 결과는 다음과 같습니다.
반환값(비교 결과) = True val1 = val2
두 변수에 저장된 값이 동일하므로 Equals() 메서드는 true를 반환합니다.
정리
UInt64.Equals() 메서드는 값 타입 간의 동등성을 안전하게 비교할 수 있는 방법을 제공합니다. 참조가 아닌 실제 값을 기준으로 비교하기 때문에, 박싱(boxing) 없이도 정확한 비교 결과를 얻을 수 있다는 점이 특징입니다. 조건 분기나 유효성 검사 등 다양한 상황에서 유용하게 활용할 수 있습니다.