Maison > développement back-end > C++ > Comment puis-je quitter efficacement les boucles imbriquées en C# ?

Comment puis-je quitter efficacement les boucles imbriquées en C# ?

Mary-Kate Olsen
Libérer: 2025-01-17 04:11:09
original
483 Les gens l'ont consulté

How Can I Efficiently Exit Nested Loops in C#?

Méthode de sortie efficace de la boucle imbriquée C#

Lorsqu'il s'agit de boucles imbriquées, il est souvent nécessaire de quitter toutes les boucles en même temps à l'avance. Plusieurs techniques efficaces peuvent être utilisées à cet effet.

Déclaration Goto (non recommandée)

Une solution, bien que déconseillée, consiste à utiliser une instruction goto :

<code class="language-c#">for (int i = 0; i < 10; i++)
{
    for (int j = 0; j < 10; j++)
    {
        if (/* 退出条件 */)
        {
            goto ExitLoops;
        }
    }
}
ExitLoops:;</code>
Copier après la connexion

Cette approche n'est généralement pas recommandée car elle est difficile à lire et sujette aux erreurs.

Méthode anonyme

Une approche plus flexible consiste à encapsuler la boucle imbriquée dans une méthode anonyme et à quitter en utilisant l'instruction return :

<code class="language-c#">Action work = delegate
{
    for (int x = 0; x < 10; x++)
    {
        for (int y = 0; y < 10; y++)
        {
            if (/* 退出条件 */)
            {
                return;
            }
        }
    }
};
work();</code>
Copier après la connexion

Dans ce cas, l'instruction return dans la méthode anonyme entraîne la sortie immédiate des deux boucles imbriquées.

Fonctions locales (C# 7 et supérieur)

Les fonctions locales introduites à partir de C# 7 offrent une solution plus élégante :

<code class="language-c#">void Work()
{
    for (int x = 0; x < 10; x++)
    {
        for (int y = 0; y < 10; y++)
        {
            if (/* 退出条件 */)
            {
                return;
            }
        }
    }
}</code>
Copier après la connexion

Les fonctions locales vous permettent de déclarer une méthode dans une autre méthode, vous permettant d'utiliser des instructions return pour quitter les deux boucles tout en gardant la structure de votre code claire.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal