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

C# LINQ में All और Any के बीच अंतर क्या है

Any(<predicate>) - यदि स्रोत अनुक्रम में कम से कम एक एलिमेंट दिए गए प्रेडिकेट से मेल खाता है तो true लौटाता है। अन्यथा false।

All(<predicate>) - यदि स्रोत अनुक्रम में हर एलिमेंट दिए गए प्रेडिकेट से मेल खाता है तो true लौटाता है। अन्यथा false।

Any() उदाहरण

static void Main(string[] args)
{
    IEnumerable<double> doubles = new List<double> { 1.2, 1.7, 2.5, 2.4 };
    bool result = doubles.Any(val => val < 1); // कोई भी 1 से कम नहीं
    Console.WriteLine(result); // False

    IEnumerable<double> doubles1 = new List<double> { 0.8, 1.7, 2.5, 2.4 };
    bool result1 = doubles1.Any(val => val < 1); // 0.8, 1 से कम है
    Console.WriteLine(result1); // True

    Console.ReadLine();
}

आउटपुट

False
True

All() उदाहरण

static void Main(string[] args)
{
    IEnumerable<double> doubles = new List<double> { 0.8, 0.9, 0.6, 0.7 };
    bool result = doubles.All(val => val < 1); // सभी 1 से कम
    Console.WriteLine(result); // True

    IEnumerable<double> doubles1 = new List<double> { 0.8, 0.9, 1.0, 0.7 };
    bool result1 = doubles1.All(val => val < 1); // 1.0, 1 से कम नहीं
    Console.WriteLine(result1); // False

    Console.ReadLine();
}

आउटपुट

True
False

तुलना तालिका

स्थितिAny()All()
खाली अनुक्रमfalsetrue (वैक्यूसली ट्रू)
एक मैचtruefalse (यदि अन्य मेल न खाएं)
सभी मैचtruetrue
कोई मैच नहींfalsefalse

व्यावहारिक उपयोग के मामले

Any() - अस्तित्व की जांच

// क्या कोई सक्रिय उपयोगकर्ता है?
bool hasActiveUsers = users.Any(u => u.IsActive);

// क्या सूची में डुप्लीकेट हैं?
bool hasDuplicates = list.GroupBy(x => x).Any(g => g.Count() > 1);

// खाली जांच (Count() == 0 से तेज़)
bool isNotEmpty = list.Any();

All() - सार्वभौमिक सत्यापन

// क्या सभी उपयोगकर्ता वयस्क हैं?
bool allAdults = users.All(u => u.Age >= 18);

// क्या सभी ऑर्डर पूरे हो गए?
bool allShipped = orders.All(o => o.Status == OrderStatus.Shipped);

// क्या सभी आइटम मान्य हैं?
bool allValid = items.All(i => i.IsValid());

प्रदर्शन नोट

  • दोनों शॉर्ट-सर्किट करते हैं: Any() पहले मैच पर रुकता है, All() पहले नॉन-मैच पर रुकता है
  • बड़े कलेक्शन के लिए Count() == 0 के बजाय Any() का उपयोग करें
  • All(predicate) तार्किक रूप से !Any(x => !predicate(x)) के बराबर है
  1. डायरेक्टएक्स 11 और डायरेक्टएक्स 12 में क्या अंतर है? डायरेक्टएक्स 11 और डायरेक्टएक्स 12 में क्या अंतर है?

    डायरेक्टएक्स एपीआई का एक संग्रह है, या एप्लिकेशन प्रोग्रामिंग इंटरफेस, जिसका उपयोग सॉफ्टवेयर द्वारा मल्टीमीडिया सामग्री को रेंडर करने और ग्राफिकल हार्डवेयर के साथ संचार करने के लिए किया जाता है। डायरेक्टएक्स का प्रमुख घटक एपीआई, डायरेक्ट3डी, सॉफ्टवेयर और ग्राफिक्स हार्डवेयर के बीच संचार को संभालता ह

  1. - C# में String और string में क्या अंतर है?

    String का मतलब System.String है जबकि string C# में System.String के लिए एक एलियास (alias) है।उदाहरण के लिए:string str = Welcome!;यह आवश्यक नहीं है, लेकिन आमतौर पर String का उपयोग तब किया जाता है जब आप क्लासेस के साथ काम करते हैं।string str = String.Format(Welcome! {0}!, user);चूंकि string System.Str

  1. - C# में लिस्ट और ऐरे में क्या अंतर है?

    एक ऐरे एक ही प्रकार के एलिमेंट्स के निश्चित आकार के अनुक्रमिक संग्रह को स्टोर करता है, जबकि लिस्ट एक जेनेरिक कलेक्शन है।लिस्ट को परिभाषित करने के लिए:List myList = new List();लिस्ट में एलिमेंट्स सेट करने के लिए, आपको Add मेथड का उपयोग करना होगा:myList.Add(Audi); myList.Add(BMW); myList.Add(Chevrolet