Intersection of two HashSets in C#

CsharpServer Side ProgrammingProgramming

To find the intersection of two HashSets, the code is as follows −

Example

 Live Demo

using System;
using System.Collections.Generic;
public class Demo {
   public static void Main(){
      HashSet<string> set1 = new HashSet<string>();
      set1.Add("AB");
      set1.Add("CD");
      set1.Add("EF");
      set1.Add("AB");
      set1.Add("IJ");
      set1.Add("KL");
      set1.Add("EF");
      set1.Add("OP");
      Console.WriteLine("Elements in HashSet1");
      foreach(string val in set1){
         Console.WriteLine(val);
      }
      HashSet<string> set2 = new HashSet<string>();
      set2.Add("EF");
      set2.Add("KL");
      Console.WriteLine("\nElements in HashSet2");
      foreach(string val in set2){
         Console.WriteLine(val);
      }
      Console.WriteLine("Count of elements in HashSet2 = " + set2.Count);
      set2.Remove("KL");
      Console.WriteLine("\nElements in HashSet2... (UPDATED)");
      foreach (string res in set2){
         Console.WriteLine(res);
      }
      Console.WriteLine("Count of elements in HashSet2 (Updated) = " + set2.Count);
      Console.WriteLine("\nIs set1 a superset of set2? "+set1.IsSupersetOf(set2));
      set1.IntersectWith(set2);
      Console.WriteLine("\nIntersection result...");
      foreach(string str in set1){
         Console.WriteLine(str);
      }
   }
}

Output

This will produce the following output −

Elements in HashSet1
AB
CD
EF
IJ
KL
OP
Elements in HashSet2
EF
KL
Count of elements in HashSet2 = 2 Elements in HashSet2... (UPDATED)
EF
Count of elements in HashSet2 (Updated) = 1
Is set1 a superset of set2? True Intersection result...
EF

Example

Let us now see another example −

 Live Demo

using System;
using System.Collections.Generic;
public class Demo {
   public static void Main(){
      HashSet<int> set1 = new HashSet<int>();
      set1.Add(30);
      set1.Add(60);
      set1.Add(70);
      set1.Add(80);
      set1.Add(100);
      set1.Add(125);
      Console.WriteLine("Elements in HashSet1");
      foreach(int val in set1){
         Console.WriteLine(val);
      }
      HashSet<int> set2 = new HashSet<int>();
      set2.Add(30);
      set2.Add(60);
      set2.Add(70);
      set2.Add(80);
      set2.Add(100);
      set2.Add(125);
      Console.WriteLine("\nElements in HashSet2");
      foreach(int val in set2){
         Console.WriteLine(val);
      }
      set1.IntersectWith(set2);
      Console.WriteLine("\nIntersection result...");
      foreach(int val in set1){
         Console.WriteLine(val);
      }
   }
}

Output

This will produce the following output −

Elements in HashSet1
30
60
70
80
100
125
Elements in HashSet2
30
60
70
80
100
125
Intersection result...
30
60
70
80
100
125
raja
Published on 11-Dec-2019 11:31:10
Advertisements