Effizienter Ausbruch aus verschachtelten C#-Schleifen
In Szenarien mit verschachtelten Schleifen ist es wichtig, schnell zwischen inneren und äußeren Schleifen zu wechseln. Die folgenden zwei Methoden können dies effektiv erreichen:
Anonyme Methoden verwenden
Anstatt boolesche Flags in einer Schleife zu verwalten, sollten Sie die Verwendung anonymer Methoden in Betracht ziehen. Dadurch wird die Schleifeniteration vom Exit-Mechanismus entkoppelt und ein schneller Exit über die return
-Anweisung ermöglicht.
Beispiel:
<code class="language-csharp">// 创建一个封装嵌套循环的匿名方法 Action work = delegate { for (int x = 0; x < 10; x++) { for (int y = 0; y < 10; y++) { if (/* 退出条件 */) return; } } }; work(); // 调用匿名方法执行嵌套循环</code>
Lokale Funktionen verwenden (nur C# 7 und höher)
C# 7 führt lokale Funktionen ein, die eine effizientere und lesbarere Alternative zu anonymen Methoden bieten. Lokale Funktionen können innerhalb einer äußeren Schleife deklariert und mit der return
-Anweisung beendet werden.
Beispiel:
<code class="language-csharp">// 定义一个处理嵌套循环的局部函数 void Work() { for (int x = 0; x < 10; x++) { for (int y = 0; y < 10; y++) { if (/* 退出条件 */) return; } } } Work(); // 调用局部函数执行嵌套循环</code>
Diese Techniken bieten eine effiziente Möglichkeit, verschachtelte Schleifen kontrolliert zu verlassen. Vermeiden Sie die Verwendung von Ausnahmen, da diese einen großen Leistungseinbruch mit sich bringen.
Das obige ist der detaillierte Inhalt vonWie kann ich verschachtelte Schleifen in C# effizient umgehen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!