C # / VB.NET / .NET में, कौन सा लूप तेजी से चलता है, for
या foreach
?
जब से मैंने पढ़ा है कि एक for
लूप एक लूप की तुलना में तेजी से काम करता foreach
है, बहुत समय पहले मैंने मान लिया था कि यह सभी संग्रह, सामान्य संग्रह, सभी सरणियों आदि के लिए सही है।
मैंने Google को देखा और कुछ लेख पाए, लेकिन उनमें से अधिकांश अनिर्णायक हैं (लेखों पर टिप्पणी पढ़ें) और समाप्त हो गए।
आदर्श क्या होगा जो प्रत्येक परिदृश्य को सूचीबद्ध करता है और उसी के लिए सबसे अच्छा समाधान है।
उदाहरण के लिए (सिर्फ एक उदाहरण कि यह कैसा होना चाहिए):
- 1000+ स्ट्रिंग्स की सरणी को पुनरावृत्त करने के लिए -
for
से बेहतर हैforeach
IList
(गैर सामान्य) स्ट्रिंग्स पर पुनरावृति के लिए -foreach
से बेहतर हैfor
उसी के लिए वेब पर पाए गए कुछ संदर्भ:
- इमैनुअल शैंज़र द्वारा मूल भव्य पुराना लेख
- कोडप्रोटोक फॉरेक्स बनाम। के लिये
- ब्लॉग - करने के लिए
foreach
या नहींforeach
, यह सवाल है - ASP.NET फोरम - नेट 1.1 सी #
for
बनामforeach
[संपादित करें]
इसके पठनीय पहलू के अलावा, मैं वास्तव में तथ्यों और आंकड़ों में दिलचस्पी रखता हूं। ऐसे अनुप्रयोग हैं जहां अंतिम अनुकूलन प्रदर्शन अनुकूलन निचली बात करते हैं।
foreach
बजाय उपयोग करने के लिए मजबूर किए जाने के बारे में पूरी तरह से असंबंधित प्रश्न के साथ विलय हो गया for
। यदि आप यहां ऐसे उत्तर देखते हैं जो बिल्कुल भी समझ में नहीं आते हैं, इसीलिए। मध्यस्थ को दोषी ठहराएंगे, न कि बेबाक जवाबों को।