Heim >Backend-Entwicklung >C++ >Wie kann ich den Index der aktuellen Iteration in einer C#-Foreach-Schleife abrufen?
verwenden Die aktuelle Iteration in der Foreach -Schleife ist eine übliche Programmieraufgabe. Obwohl C# keine gebaute Lösung bietet, verfügt es über eine einzigartige Struktur, die diese Nachfrage erfüllen kann.
Lösung: Verwenden Sie ausgewählte und anonyme Objekte
Eine Methode besteht darin, die LINQ -Auswahlmethode zu verwenden, die eine schwere Last bietet, mit der Sie eine Funktion angeben können, die den Wert und den Index als Parameter verwendet. Durch die Auswahl des Index in dieser Funktion können Sie ein anonymer Objekt erstellen, das Wert und Index enthält:
optimiert: Verwenden Sie Valuetuple und automatische Dekonstruktion
<code class="language-csharp">foreach (var item in Model.Select((value, i) => new { i, value })) { var value = item.value; var index = item.i; }</code>
Wenn Sie C# 7.0 oder höhere Version verwenden, können Sie ValuETuple anstelle von anonymen Objekten verwenden, um die Haufen -Zuordnung zu vermeiden:
Darüber hinaus erfordert die automatische Dekonstruktion keine explizite Zugriffsattribute:
<code class="language-csharp">foreach (var item in Model.Select((value, i) => (value, i))) { var value = item.value; var index = item.i; }</code>Durch Kombination dieser Strukturen können Sie die aktuellen iterativen Indizes im C# foreach -Zyklus problemlos abrufen, wodurch die Genauigkeit und Flexibilität des Codes verbessert wird.
Das obige ist der detaillierte Inhalt vonWie kann ich den Index der aktuellen Iteration in einer C#-Foreach-Schleife abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!