Maison >développement back-end >C++ >Comment puis-je échapper efficacement aux boucles imbriquées en C# ?
Sortir efficacement des boucles imbriquées C#
Dans les scénarios impliquant des boucles imbriquées, il est crucial de basculer rapidement entre les boucles internes et externes. Les deux méthodes suivantes peuvent efficacement y parvenir :
Utilisez des méthodes anonymes
Au lieu de gérer les drapeaux booléens en boucle, pensez à utiliser des méthodes anonymes. Cela dissocie l'itération de la boucle du mécanisme de sortie et permet une sortie rapide via l'instruction return
.
Exemple :
<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>
Utiliser les fonctions locales (C# 7 et supérieur uniquement)
C# 7 introduit des fonctions locales, qui offrent une alternative plus efficace et plus lisible aux méthodes anonymes. Les fonctions locales peuvent être déclarées dans une boucle externe et terminées à l'aide de l'instruction return
.
Exemple :
<code class="language-csharp">// 定义一个处理嵌套循环的局部函数 void Work() { for (int x = 0; x < 10; x++) { for (int y = 0; y < 10; y++) { if (/* 退出条件 */) return; } } } Work(); // 调用局部函数执行嵌套循环</code>
Ces techniques offrent un moyen efficace de sortir des boucles imbriquées de manière contrôlée. Évitez d’utiliser des exceptions car elles entraînent une énorme baisse des performances.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!