C#의 UInt64.Equals() 메서드는 현재 인스턴스가 지정된 객체 또는 UInt64 값과 같은지 여부를 나타내는 값을 반환합니다. 64비트 부호 없는 정수(ulong) 타입의 값을 비교할 때 유용하게 사용할 수 있습니다.
문법(Syntax)
UInt64.Equals() 메서드의 문법은 다음과 같습니다.
public override bool Equals (object ob); public bool Equals (ulong ob);
첫 번째 문법에서 매개변수 ob는 현재 인스턴스와 비교할 객체를 나타내며, 두 번째 문법에서 매개변수 ob는 현재 인스턴스와 비교할 64비트 부호 없는 정수를 나타냅니다.
예제 1: 서로 다른 값 비교하기
이제 UInt64.Equals() 메서드를 구현하는 예제를 살펴보겠습니다.
using System;
public class Demo {
public static void Main(){
ulong val1 = 44565777;
ulong val2 = 77878787;
bool res = val1.Equals(val2);
Console.WriteLine("Return value (comparison) = "+res);
if (res)
Console.WriteLine("val1 = val2");
else
Console.WriteLine("val1 != val2");
}
}출력 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
Return value (comparison) = False val1 != val2
두 값이 서로 다르기 때문에 Equals() 메서드는 False를 반환하고, 조건문에서 "val1 != val2"가 출력되는 것을 확인할 수 있습니다.
예제 2: 동일한 값 비교하기
이번에는 같은 값을 가진 두 변수를 비교하는 또 다른 예제입니다.
using System;
public class Demo {
public static void Main(){
ulong val1 = 78796878;
ulong val2 = 78796878;
bool res = val1.Equals(val2);
Console.WriteLine("Return value (comparison) = "+res);
if (res)
Console.WriteLine("val1 = val2");
else
Console.WriteLine("val1 != val2");
}
}출력 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
Return value (comparison) = True val1 = val2
두 변수가 동일한 값을 가지고 있으므로 Equals() 메서드는 True를 반환하고, "val1 = val2"가 출력됩니다.
정리
UInt64.Equals() 메서드는 두 개의 오버로드 버전을 제공합니다. 하나는 object 타입을, 다른 하나는 ulong 타입을 매개변수로 받습니다. 두 값이 같으면 true, 다르면 false를 반환하므로, 조건문과 함께 활용하면 값 비교 로직을 간결하게 작성할 수 있습니다.