linq
Linq का उपयोग करते हुए ले लो और जबकि छोड़ दें
खोज…
परिचय
टेक, स्किप, टेकव्हील और स्किपव्हील सभी को विभाजन ऑपरेटर कहा जाता है क्योंकि वे दिए गए शर्त के अनुसार इनपुट अनुक्रम के एक खंड को प्राप्त करते हैं। आइए हम इन ऑपरेटरों पर चर्चा करें
विधि लो
टेक मेथड एक क्रम में पहले तत्व से शुरू होने वाली निर्दिष्ट स्थिति तक तत्वों को ले जाता है। टेक का हस्ताक्षर:
Public static IEnumerable<TSource> Take<TSource>(this IEnumerable<TSource> source,int count);
उदाहरण:
int[] numbers = { 1, 5, 8, 4, 9, 3, 6, 7, 2, 0 };
var TakeFirstFiveElement = numbers.Take(5);
आउटपुट:
रिजल्ट 1,5,8,4 और 9 टू फाइव एलिमेंट है।
छोड़ो विधि
एक अनुक्रम में पहले तत्व से शुरू होने वाली निर्दिष्ट स्थिति तक के तत्व।
स्किप के हस्ताक्षर:
Public static IEnumerable Skip(this IEnumerable source,int count);
उदाहरण
int[] numbers = { 1, 5, 8, 4, 9, 3, 6, 7, 2, 0 };
var SkipFirstFiveElement = numbers.Take(5);
आउटपुट: परिणाम 3,6,7,2 है और 0 तत्व प्राप्त करने के लिए।
TakeWhile ():
दिए गए संग्रह से तत्वों को निर्दिष्ट स्थिति के सत्य होने तक लौटाता है। यदि पहला तत्व ही स्थिति को संतुष्ट नहीं करता है, तो एक खाली संग्रह लौटाता है।
टेकवाइल का हस्ताक्षर ():
Public static IEnumerable <TSource> TakeWhile<TSource>(this IEnumerable <TSource> source,Func<TSource,bool>,predicate);
एक और ओवर लोड हस्ताक्षर:
Public static IEnumerable <TSource> TakeWhile<TSource>(this IEnumerable <TSource> source,Func<TSource,int,bool>,predicate);
उदाहरण I:
int[] numbers = { 1, 5, 8, 4, 9, 3, 6, 7, 2, 0 };
var SkipFirstFiveElement = numbers.TakeWhile(n => n < 9);
आउटपुट:
यह 1,5,8 और 4 की समाप्ति पर लौटेगा
उदाहरण II:
int[] numbers = { 1, 2, 3, 4, 9, 3, 6, 7, 2, 0 };
var SkipFirstFiveElement = numbers.TakeWhile((n,Index) => n < index);
आउटपुट:
यह तत्व 1,2,3 और 4 में वापस आएगा
SkipWhile ()
एक तत्व पर आधारित स्किथ तत्व जब तक एक तत्व स्थिति को संतुष्ट नहीं करता है। यदि पहला तत्व स्वयं स्थिति को संतुष्ट नहीं करता है, तो यह 0 तत्वों को छोड़ देता है और सभी तत्वों को अनुक्रम में लौटाता है।
SkipWhile का हस्ताक्षर ():
Public static IEnumerable <TSource> SkipWhile<TSource>(this IEnumerable <TSource> source,Func<TSource,bool>,predicate);
एक और ओवर लोड हस्ताक्षर:
Public static IEnumerable <TSource> SkipWhile<TSource>(this IEnumerable <TSource> source,Func<TSource,int,bool>,predicate);
उदाहरण I:
int[] numbers = { 1, 5, 8, 4, 9, 3, 6, 7, 2, 0 };
var SkipFirstFiveElement = numbers.SkipWhile(n => n < 9);
आउटपुट:
यह तत्व 9,3,6,7,2 और 0 पर लौटेगा।
उदाहरण II:
int[] numbers = { 4, 5, 8, 1, 9, 3, 6, 7, 2, 0 };
var indexed = numbers.SkipWhile((n, index) => n > index);
आउटपुट:
यह तत्व 1,9,3,6,7,2 और 0 पर लौटेगा।