Equals 메서드의 컬렉션 콘텐츠 비교
Equals 메서드에서는 컬렉션의 콘텐츠, 특히 Dictionary와 IList의 콘텐츠를 비교하려고 합니다. . 이 두 유형을 직접 비교할 수 있는 기본 제공 방법은 없지만 Enumerable.SequenceEqual 메서드를 활용하여 내용이 동일한지 확인할 수 있습니다.
Enumerable.SequenceEqual
이 메서드는 두 개의 시퀀스를 허용하고 지정된 IEqualityComparer를 사용하여 해당 요소를 비교합니다. 시퀀스에 동일한 수의 요소가 포함되어 있고 해당 요소의 각 쌍이 동일한 경우 true를 반환합니다.
사전과 목록 비교
두 개의 사전과 두 개의 IList를 비교하려면 , 해당 키와 값을 각각 동일시할 수 있습니다. IList의 경우 SequenceEqual을 사용하여 내용을 직접 비교할 수 있습니다. 사전의 경우 키-값 쌍 목록으로 변환하고 SequenceEqual을 사용하여 동일한지 확인할 수 있습니다.
사용 예
"라는 이름의 사전이 있다고 가정합니다. dict1" 및 "list1"이라는 목록이 있고 이를 다른 사전 "dict2" 및 목록과 비교하려고 합니다. "목록2":
// Convert Dictionaries to lists of key-value pairs var dict1List = dict1.Select(x => new KeyValuePair<string, int>(x.Key, x.Value)).ToList(); var dict2List = dict2.Select(x => new KeyValuePair<string, int>(x.Key, x.Value)).ToList(); // Compare the lists of key-value pairs using SequenceEqual bool dictEqual = dict1List.SequenceEqual(dict2List); // Compare the ILists directly using SequenceEqual bool listEqual = list1.SequenceEqual(list2);
위 내용은 C#에서 사전과 IList의 내용을 어떻게 비교할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!