Heim >Backend-Entwicklung >C++ >Wie erhalte ich mit LINQ den Index eines Elements in einer Liste oder einem Array?
Elementindizes mit LINQ effizient finden
Bei der Arbeit mit Datenstrukturen wie Listen und Arrays ist es häufig erforderlich, den Index eines Elements zu finden, das bestimmten Kriterien entspricht. LINQ bietet eine elegante Lösung, die im Vergleich zu herkömmlichen schleifenbasierten Ansätzen präzisen und lesbaren Code bereitstellt.
Um den Index des ersten Elements zu bestimmen, das eine Bedingung erfüllt, betrachten Sie diese LINQ-Abfrage:
<code class="language-csharp">myCars .Select((car, index) => new { car, index }) .First(myCondition) .index;</code>
Dieser Code verwendet zunächst Select
, um anonyme Objekte zu erstellen, wobei jedes car
mit seinem index
gepaart wird. First
filtert dann diese Sequenz und gibt das erste Objekt zurück, das myCondition
erfüllt. Schließlich zeigt die index
-Eigenschaft dieses Objekts den gewünschten Index an.
Eine etwas kompaktere Version:
<code class="language-csharp">myCars .Select((v, i) => new { car = v, index = i }) .First(myCondition) .index;</code>
Eine weitere Vereinfachung ist mit C# 7-Tupeln möglich:
<code class="language-csharp">myCars .Select((car, index) => (car, index)) .First(myCondition) .index;</code>
Der Vorteil der Verwendung von LINQ liegt auf der Hand: Es liefert sauberen, ausdrucksstarken Code, sodass keine manuelle Iteration und explizite Variablenverwaltung erforderlich sind.
Das obige ist der detaillierte Inhalt vonWie erhalte ich mit LINQ den Index eines Elements in einer Liste oder einem Array?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!