Avatar ·

C# में foreach लूप की वर्तमान पुनरावृत्ति का इंडेक्स कैसे प्राप्त करें?

सभी को नमस्कार! मैं अभी C# सीखना शुरू कर रहा हूँ और मुझे एक समस्या का सामना करना पड़ा: मुझे न केवल कलेक्शन के तत्वों को पुनरावृत्त करना है, बल्कि पुनरावृत्ति के दौरान प्रत्येक तत्व का क्रमांक भी जानना है। उदाहरण के लिए, मेरे पास स्ट्रिंग्स की एक सूची है: ```csharp List fruits = new List { "सेब", "केला", "संतरा", "नाशपाती" }; ``` मैं प्रत्येक फल को उसके इंडेक्स के साथ इस प्रकार प्रदर्शित करना चाहता हूँ: ``` 0: सेब 1: केला 2: संतरा 3: नाशपाती ``` स्पष्ट रूप से, `for` लूप इस कार्य के लिए उपयुक्त है: ```csharp for (int i = 0; i < fruits.Count; i++) { Console.WriteLine($"{i}: {fruits[i]}"); } ``` लेकिन मुझे विशेष रूप से `foreach` में रुचि है। मैंने सुना है कि `foreach` पढ़ने में सरल और सुरक्षित है, लेकिन इसमें कोई अंतर्निहित काउंटर वेरिएबल नहीं है। मैंने ऐसा करने की कोशिश की: ```csharp int index = 0; foreach (var fruit in fruits) { Console.WriteLine($"{index}: {fruit}"); index++; } ``` यह काम करता है, लेकिन यह एक हैक जैसा लगता है। क्या कोई और अधिक सुरुचिपूर्ण तरीका है? उदाहरण के लिए, कोई LINQ विधि या लूप का कोई गुण?