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

C# में SortedSet से प्रीडिकेट से मेल खाने वाले तत्व हटाएं

C# में SortedSet<T> वर्ग की RemoveWhere(Predicate<T>) विधि का उपयोग करके उन सभी तत्वों को हटाया जा सकता है जो निर्दिष्ट प्रीडिकेट (शर्त) से मेल खाते हैं। यह विधि प्रीडिकेट से मेल खाने वाले सभी तत्वों को एक साथ हटाती है और हटाए गए तत्वों की संख्या लौटाती है।

उदाहरण 1: 10 से विभाज्य तत्व हटाना

using System;
using System.Collections.Generic;

public class Demo {
    private static bool Demo(int i) {
        return ((i % 10) == 0);
    }
    
    public static void Main(String[] args) {
        SortedSet set1 = new SortedSet();
        set1.Add(200);
        set1.Add(215);
        set1.Add(310);
        set1.Add(500);
        set1.Add(600);
        
        Console.WriteLine("SortedSet तत्व...");
        foreach (int i in set1) {
            Console.WriteLine(i);
        }
        
        Console.WriteLine();
        
        int removedCount = set1.RemoveWhere(Demo);
        
        Console.WriteLine("कुछ तत्व हटाने के बाद SortedSet...");
        foreach (int i in set1) {
            Console.WriteLine(i);
        }
        
        Console.WriteLine("हटाए गए तत्वों की संख्या: " + removedCount);
    }
}

आउटपुट

SortedSet तत्व...
200
215
310
500
600

SortedSet कुछ तत्व हटाने के बाद...
215
हटाए गए तत्वों की संख्या: 4

उदाहरण 2: विशिष्ट मान 500 हटाना

using System;
using System.Collections.Generic;

public class Demo {
    private static bool Demo(int i) {
        return (i == 500);
    }
    
    public static void Main(String[] args) {
        SortedSet set1 = new SortedSet();
        set1.Add(200);
        set1.Add(215);
        set1.Add(310);
        set1.Add(500);
        set1.Add(600);
        
        Console.WriteLine("SortedSet तत्व...");
        foreach (int i in set1) {
            Console.WriteLine(i);
        }
        
        Console.WriteLine();
        
        int removedCount = set1.RemoveWhere(Demo);
        
        Console.WriteLine("एक तत्व हटाने के बाद SortedSet...");
        foreach (int i in set1) {
            Console.WriteLine(i);
        }
        
        Console.WriteLine("हटाए गए तत्वों की संख्या: " + removedCount);
    }
}

आउटपुट

SortedSet तत्व...
200
215
310
500
600

SortedSet एक तत्व हटाने के बाद...
200
215
310
600
हटाए गए तत्वों की संख्या: 1

मुख्य बिंदु

  • RemoveWhere(Predicate<T>) प्रीडिकेट से मेल खाने वाले सभी तत्व हटाता है
  • वापसी मान int होता है: हटाए गए तत्वों की संख्या
  • प्रीडिकेट एक फ़ंक्शन है जो bool लौटाता है
  • SortedSet क्रमबद्ध क्रम बनाए रखता है
  • लैम्ब्डा एक्सप्रेशन का उपयोग कर सकते हैं: set.RemoveWhere(x => x % 10 == 0)
  1. - C# में HashSet से सभी तत्व हटाएं

    उदाहरण HashSet<T> की Clear() मेथड सेट से सभी तत्वों को हटा देती है। इस उदाहरण में दो HashSet बनाए गए हैं, दूसरे में तत्व जोड़े गए हैं, फिर Clear() कॉल करके खाली किया गया है। using System; using System.Collections.Generic; public class Demo { public static void Main(String[] args) {

  1. - C# में प्रेडिकेट द्वारा परिभाषित शर्तों से मेल खाने वाले List के सभी तत्व हटाएं

    उदाहरण List<T> की RemoveAll() मेथड एक प्रेडिकेट (डेलिगेट) स्वीकार करती है और उन सभी तत्वों को हटा देती है जो शर्त को पूरा करते हैं। यह मेथड हटाए गए तत्वों की संख्या लौटाती है। using System; using System.Collections.Generic; public class Demo { private static bool demo(int i) { ret

  1. - C# में ऐरे में निर्दिष्ट शर्तों से मेल खाने वाले तत्व हैं या नहीं जांचें

    C# में एक ऐरे में निर्दिष्ट शर्तों से मेल खाने वाले तत्व हैं या नहीं, यह जांचने के लिए Array.Exists() मेथड का उपयोग किया जाता है। यह मेथड एक प्रेडिकेट डेलीगेट लेता है और बूलियन मान लौटाता है। उदाहरण 1 ele.StartsWith(E))); } } आउटपुट Products list... Electronics Accessories Clothing Toys Clothin