C# | Check if a HashSet and a specified collection share common elements
In C#, you can use the SetEquals method to check if a HashSet and a specified collection contain the same elements. The SetEquals method returns true if the HashSet and the specified collection contain the same elements; otherwise, it returns false.
Here is an example code that demonstrates how to use the SetEquals method to check if a HashSet and a specified collection contain the same elements:
C#
using System;
using System.Collections.Generic;
class Program
{
static void Main( string [] args)
{
HashSet< int > set1 = new HashSet< int > { 1, 2, 3, 4, 5 };
List< int > list1 = new List< int > { 5, 4, 3, 2, 1 };
bool areEqual = set1.SetEquals(list1);
Console.WriteLine( "Are set1 and list1 equal? " + areEqual);
List< int > list2 = new List< int > { 6, 7, 8 };
bool areEqual2 = set1.SetEquals(list2);
Console.WriteLine( "Are set1 and list2 equal? " + areEqual2);
Console.ReadLine();
}
}
|
Output
Are set1 and list1 equal? True
Are set1 and list2 equal? False
In this example, we first create a HashSet named set1 and a List named list1. Both collections contain the same elements but in a different order. We then use the SetEquals method to check if they contain the same elements, and the output shows that they do.
We then create another List named list2 that contains different elements. We use the SetEquals method again to check if set1 and list2 contain the same elements, and the output shows that they don’t.
A HashSet is an unordered collection of the unique elements. It is found in System.Collections.Generic namespace. It is used in a situation where we want to prevent duplicates from being inserted in the collection. As far as performance is concerned, it is better in comparison to the list.HashSet.Overlaps(IEnumerable) Method is used to check whether the current HashSet object and a specified collection share common elements.
Syntax:
mySet1.Overlaps(mySet2);
Where, mySet1 and mySet2 are HashSets.
Return Type: This method returns true if the both HashSets share at least one common element otherwise it returns false.
Below given are some examples to understand the implementation in a better way :
Example 1:
CSHARP
using System;
using System.Collections.Generic;
class GFG {
public static void Main()
{
HashSet< string > mySet1 = new HashSet< string >();
mySet1.Add("Geeks");
mySet1.Add("GeeksforGeeks");
mySet1.Add("GeeksClasses");
mySet1.Add("GeeksQuiz");
HashSet< string > mySet2 = new HashSet< string >();
mySet2.Add("DS");
mySet2.Add("C++");
mySet2.Add("Java");
mySet2.Add("JavaScript");
Console.WriteLine(mySet1.Overlaps(mySet2));
}
}
|
Example 2:
CSHARP
using System;
using System.Collections.Generic;
class GFG {
public static void Main()
{
HashSet< int > mySet1 = new HashSet< int >();
mySet1.Add(4);
mySet1.Add(8);
mySet1.Add(12);
mySet1.Add(16);
HashSet< int > mySet2 = new HashSet< int >();
mySet2.Add(4);
mySet2.Add(8);
mySet2.Add(15);
mySet2.Add(20);
Console.WriteLine(mySet1.Overlaps(mySet2));
}
}
|
Reference:
Last Updated :
12 Jun, 2023
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...