मैं एक IEnumerable<T>
है के लिए अलग अलग है। मैं पिछले आइटम है, जो करने के लिए मैं कुछ और करना चाहते हैं को छोड़कर, संग्रह की प्रत्येक आइटम के लिए एक बात करना चाहते हैं। मैं इसे अच्छी तरह से कैसे कोड कर सकता हूं? स्यूडोकोडIEnumerable foreach, कुछ पिछले तत्व
foreach (var item in collection)
{
if (final)
{
g(item)
}
else
{
f(item)
}
}
में तो अगर मेरे IEnumerable Enumerable.Range(1,4)
थे मैं च कर चाहते हैं (1) च (2) च (3) जी (4)। एनबी। यदि मेरा आईनेमरेबल लंबाई 1 होता है, तो मुझे जी (1) चाहिए।
मेरे IEnumerable Count()
पूरी बात से अधिक पाशन के रूप में के रूप में महंगा बना रही है, एक तरह से भद्दा होता है।
धन्यवाद मैं डाल कि एक विस्तार विधि में https://gist.github.com/2781446 –
@OJay नहीं; एक बार जब हम जानते हैं कि यह अंतिम * तत्व नहीं है, तो पहले तत्व को संसाधित किया जाता है, इसलिए: जब हमने दूसरा पढ़ा है - ध्यान दें कि पहली टिप्पणी में हम 'अंतिम' के साथ काम करते हैं, उर्फ ** पिछले ** आइटम, * नहीं * वर्तमान एक –
'IENuemerable' को अनुमान लगाया जाना चाहिए 'Inumerable' मुझे लगता है। – Blairg23