नहीं स्प्लिट द्वारा लौटाई गई वस्तु (जो एक सरणी होती है, लेकिन यह अन्य समसामयिक वस्तुओं पर लागू होती है) जो लूप को सभी के बाद परिभाषित करती है। यदि इसमें शून्य या दस लाख वस्तुएं हैं, तो यह शून्य या लाख पुनरावृत्तियों को परिभाषित कर रहा है, जो इसे तब तक नहीं किया जा सकता जब इसे बुलाया जा सके।
थोड़ा अधिक विस्तार के लिए, कोड उत्पादन के बराबर हो जाता है:
string[] temp = installerEmails.Split(',');
var enumerator = temp.GetEnumerator();
try
{
while(enumerator.MoveNext())
{
string email = (string)enumerator.Current;
Console.WriteLine(email);
}
}
finally
{
if(enumerator is IDisposable)
((IDisposable)enumerator).Dispose()
}
आप देख सकते हैं, .Split()
केवल एक बार कहा जाता है।
स्रोत
2010-10-14 14:50:52
+1: अच्छा प्रश्न –
संभावित डुप्लिकेट [फ़ोरैच फ़ंक्शन के माध्यम से लूपिंग करते समय फ़ोरैच कैसे काम करता है?] (Http://stackoverflow.com/questions/1632810/how-does-foreach-work-when-looping-through -फंक्शन-परिणाम) –