Computer >> 컴퓨터 >  >> 프로그램 작성 >> C#

IStructuralEquatable 인터페이스는 C#에서 무엇을 합니까?

<시간/>

IStructuralEquatable 인터페이스는 구조적 동등성에 대한 개체 비교를 지원하는 메서드를 정의합니다. 즉, 두 개체는 값이 동일하기 때문에 동일합니다.

여기에는 다음 두 가지 방법이 포함됩니다 -

Sr.No 방법 및 설명
1 Equals(Object, IEqualityComparer)
메서드는 개체가 현재 인스턴스와 구조적으로 동일한지 여부를 확인했습니다.
2 GetHashCode(IEqualityComparer)
메서드는 현재 인스턴스의 해시 코드입니다.

Tuple 객체를 만들고 IstructuralEquatable 인터페이스로 작업한 예를 살펴보겠습니다.

튜플 생성 -

var tupleOne = Tuple.Create(26.3, Double.NaN, 35.6);
var tupleOne = Tuple.Create(26.3, Double.NaN, 35.6);

이제 기본 비교자를 사용하여 IStructuralEquatable.Equals를 호출하여 동등성을 확인합니다.

IStructuralEquatable chk = tupleOne;
Console.WriteLine(chk.Equals(tupleTwo, EqualityComparer<object>.Default));