Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C#

C# में HashSet में तत्व जोड़ना (Add मेथड)

HashSet<T>.Add() मेथड निर्दिष्ट तत्व को सेट में जोड़ता है यदि वह पहले से मौजूद नहीं है। HashSet अद्वितीय तत्वों का अनऑर्डर्ड संग्रह है जो O(1) औसत लुकअप, इंसर्शन और डिलीशन प्रदान करता है।

उदाहरण 1: स्ट्रिंग HashSet में तत्व जोड़ना और तुलना

using System;
using System.Collections.Generic;

public class Demo {
    public static void Main(string[] args) {
        HashSet<string> set1 = new HashSet<string>();
        set1.Add("A");
        set1.Add("B");
        set1.Add("C");
        set1.Add("D");
        set1.Add("E");
        set1.Add("F");
        set1.Add("G");
        set1.Add("H");

        Console.WriteLine("HashSet1 में तत्व...");
        foreach (string item in set1) {
            Console.WriteLine(item);
        }

        HashSet<string> set2 = new HashSet<string>();
        set2.Add("John");
        set2.Add("Jacob");
        set2.Add("Ryan");
        set2.Add("Tom");
        set2.Add("Andy");
        set2.Add("Tim");
        set2.Add("Steve");
        set2.Add("Mark");

        Console.WriteLine("\nHashSet2 में तत्व (एन्यूमरेटर से)...");
        HashSet<string>.Enumerator enumerator = set2.GetEnumerator();
        while (enumerator.MoveNext()) {
            Console.WriteLine(enumerator.Current);
        }

        // Equals रेफरेंस समानता जांचता है (कंटेंट नहीं)
        Console.WriteLine("\nक्या HashSet1, HashSet2 के बराबर है? = " + set1.Equals(set2));
        Console.WriteLine("HashSet2 संख्या = " + set2.Count);
        
        // Clear और पुनः जांचें
        set2.Clear();
        Console.WriteLine("Clear के बाद HashSet2 संख्या = " + set2.Count);
    }
}

आउटपुट

HashSet1 में तत्व...
A
B
C
D
E
F
G
H

HashSet2 में तत्व (एन्यूमरेटर से)...
John
Jacob
Ryan
Tom
Andy
Tim
Steve
Mark

क्या HashSet1, HashSet2 के बराबर है? = False
HashSet2 संख्या = 8
Clear के बाद HashSet2 संख्या = 0

उदाहरण 2: इंटीजर HashSet और सबसेट जांच

using System;
using System.Collections.Generic;

public class Demo {
    public static void Main(string[] args) {
        HashSet<int> set1 = new HashSet<int>();
        set1.Add(100);
        set1.Add(200);

        Console.WriteLine("HashSet1 में तत्व...");
        foreach (int item in set1) {
            Console.WriteLine(item);
        }

        HashSet<int> set2 = new HashSet<int>();
        set2.Add(100);
        set2.Add(200);

        Console.WriteLine("\nHashSet2 में तत्व...");
        foreach (int item in set2) {
            Console.WriteLine(item);
        }

        // सबसेट जांच
        Console.WriteLine("\nक्या set1, set2 का सबसेट है? = " + set1.IsSubsetOf(set2));
        Console.WriteLine("क्या set1, set2 का प्रॉपर सबसेट है? = " + set1.IsProperSubsetOf(set2));
        Console.WriteLine("क्या set1, set2 को ओवरलैप करता है? = " + set1.Overlaps(set2));
        Console.WriteLine("क्या set1, set2 के बराबर है (सेट समानता)? = " + set1.SetEquals(set2));
    }
}

आउटपुट

HashSet1 में तत्व...
100
200

HashSet2 में तत्व...
100
200

क्या set1, set2 का सबसेट है? = True
क्या set1, set2 का प्रॉपर सबसेट है? = False
क्या set1, set2 को ओवरलैप करता है? = True
क्या set1, set2 के बराबर है (सेट समानता)? = True

HashSet मुख्य मेथड्स

मेथडविवरणरिटर्न
Add(T)तत्व जोड़ें यदि नहीं मौजूदbool (जोड़ा गया?)
Remove(T)तत्व हटाएंbool (हटाया गया?)
Contains(T)तत्व मौजूदगी जांचेंbool
Clear()सभी तत्व हटाएंvoid
UnionWithयूनियन (इस सेट को संशोधित)void
IntersectWithइंटरसेक्शनvoid
ExceptWithडिफरेंसvoid
IsSubsetOfसबसेट जांचbool
IsSupersetOfसुपरसेट जांचbool
SetEqualsसेट समानता जांचbool
Overlapsकोई सामान्य तत्व?bool

महत्वपूर्ण बिंदु

  • अद्वितीय तत्व: डुप्लिकेट Add नजरअंदाज कर दिए जाते हैं (false लौटाता है)।
  • अनऑर्डर्ड: कोई गारंटीड क्रम नहीं; इटरेशन क्रम अनिर्धारित।
  • O(1) ऑपरेशन्स: Add, Remove, Contains औसत O(1)।
  • कस्टम तुलना: कंस्ट्रक्टर में IEqualityComparer<T> पास करें।
  • Equals() व्यवहार: डिफ़ॉल्ट Object.Equals रेफरेंस समानता जांचता है; सेट समानता के लिए SetEquals() उपयोग करें।
  1. - JavaScript ऑब्जेक्ट में प्रॉपर्टी कैसे जोड़ें?

    JavaScript ऑब्जेक्ट में नई प्रॉपर्टी जोड़ना JavaScript में ऑब्जेक्ट डायनामिक होते हैं - आप रनटाइम पर कभी भी नई प्रॉपर्टीज जोड़ सकते हैं। तरीके 1. डॉट नोटेशन (सबसे आम) <html> <body> <p id=demo></p> <script> var car = {name: Benz, Brand: Mercedes, model: open roof};

  1. Android में ConcurrentLinkedDeque में अंतिम एलिमेंट कैसे जोड़ें? Android में ConcurrentLinkedDeque में अंतिम एलिमेंट कैसे जोड़ें?

    ConcurrentLinkedDeque में addLast() मेथड का उपयोग ConcurrentLinkedDeque दोनों सिरों पर थ्रेड-सेफ इन्सर्शन/डिलीशन सपोर्ट करता है। addLast() एलिमेंट को डीक के अंत में जोड़ता है। चरण 1: प्रोजेक्ट सेटअप Android Studio: File → New Project। चरण 2: लेआउट (activity_main.xml) <?xml version=1.0 encoding=

  1. Android में ConcurrentLinkedDeque में पहला एलिमेंट कैसे जोड़ें? Android में ConcurrentLinkedDeque में पहला एलिमेंट कैसे जोड़ें?

    ConcurrentLinkedDeque में addFirst() मेथड का उपयोग addFirst() मेथड ConcurrentLinkedDeque के शुरुआत (हेड) में एलिमेंट जोड़ता है, थ्रेड-सेफ तरीके से। चरण 1: प्रोजेक्ट बनाएं Android Studio में File → New Project। चरण 2: लेआउट XML <?xml version=1.0 encoding=utf-8?> <LinearLayout xmlns:android