Liste in C# ändern: foreach
Schleife oder for
Schleife?
In Versionen vor C# 4.0 führte das Ändern einer Liste während einer foreach
-Schleife zu einer Ausnahme. Mit .NET 4.0 wurde jedoch die Unterstützung für diese Funktion eingeführt. Der beste Ansatz ist jedoch die Verwendung einer herkömmlichen for
-Schleife.
Unveränderliche Aufzählung
Dieforeach
-Anweisung verwendet unveränderliche Sammlungen, wie MSDN angibt: „Die foreach
-Anweisung...kann nicht zum Hinzufügen oder Entfernen von Elementen aus der Quellsammlung verwendet werden, um unvorhersehbare Nebenwirkungen zu vermeiden.“
Loop-Lösungfor
-Schleife zu wechseln: for
<code class="language-csharp">for (var i = 0; i < list.Count; i++) { // 修改 list[i] }</code>
Ausnahme für gleichzeitige Sammlung
Bitte beachten Sie, dass in dem in der Frage genannten Blog erwähnt wird, dass diese Ausnahme nicht für gleichzeitige Sammlungen gilt, die in .NET 4.0 eingeführt wurden. Es wird jedoch weiterhin empfohlen, zur Listenänderung eine-Schleife zu verwenden, da dies die empfohlene und zuverlässigste Technik ist. for
Das obige ist der detaillierte Inhalt vonSollte ich ein 'foreach' oder 'for' -Loop verwenden, um Listen in C#zu ändern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!