Passer au contenu du pied de page
.NET AIDE

C# Continue (Comment ça fonctionne pour les développeurs)

Les instructions de contrôle de flux sont cruciales en programmation, car elles dictent la séquence d'exécution des instructions au sein d'un programme. En C#, trois instructions fondamentales pour contrôler les boucles sont 'continue', 'break' et 'goto'. Ces instructions permettent aux programmeurs de modifier le flux d'exécution au sein des boucles, améliorant ainsi l'efficacité et la lisibilité du code. Dans cet article, nous examinons les subtilités des méthodes continue et break en C#, en explorant leur syntaxe, leurs applications et les meilleures pratiques. Plus tard dans l'article, nous apprendrons également à propos de IronPDF - une bibliothèque PDF C# robuste de Iron Software pour lire et écrire des documents PDF.

Comprendre l'instruction 'continue;'

L'instruction continue est utilisée dans les structures de boucle pour ignorer le bloc de code restant et passer à l'itération suivante de la boucle. Elle indique essentiellement au programme de contrôler d'ignorer le reste du code de l'itération actuelle et de passer à l'itération suivante.

Syntaxee

continue;
continue;
$vbLabelText   $csharpLabel

Exemple

public class Program
{
    public static void Main()
    {
        Console.WriteLine("Demonstrate Continue Method in C#");
        Console.WriteLine("Print 1 to 10 skipping 5");

        for (int i = 0; i < 10; i++)
        {
            if (i == 5)
            {
                continue; // Skips iteration when i equals 5
            }
            Console.WriteLine(i);
        }
    }
}
public class Program
{
    public static void Main()
    {
        Console.WriteLine("Demonstrate Continue Method in C#");
        Console.WriteLine("Print 1 to 10 skipping 5");

        for (int i = 0; i < 10; i++)
        {
            if (i == 5)
            {
                continue; // Skips iteration when i equals 5
            }
            Console.WriteLine(i);
        }
    }
}
$vbLabelText   $csharpLabel

Dans cet exemple, lorsque i est égal à 5, l'instruction continue est exécutée, sautant le code restant à l'intérieur de la boucle pour cette itération. En conséquence, le nombre 5 ne sera pas imprimé, et la boucle passera à l'itération suivante.

Sortie

C# Continue (Comment ça fonctionne pour les développeurs) : Figure 1 - Sortie de la console montrant que le cas 5 est sauté en raison de l'instruction continue

Explorer la méthode 'break;'

Contrairement à continue, l'instruction break est utilisée pour sortir prématurément d'une boucle. Lorsqu'elle est rencontrée, elle met fin à l'exécution de la boucle, indépendamment de la condition de la boucle. Elle est couramment utilisée pour sortir d'une boucle telle qu'une boucle while, tôt si une certaine condition est remplie.

Exemple

int[] numbers = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
foreach (int number in numbers)
{
    if (number == 6)
    {
        break; // Exits loop when number equals 6
    }
    Console.WriteLine(number);
}
int[] numbers = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
foreach (int number in numbers)
{
    if (number == 6)
    {
        break; // Exits loop when number equals 6
    }
    Console.WriteLine(number);
}
$vbLabelText   $csharpLabel

Dans cet exemple, la boucle itère à travers le tableau numbers. Quand elle rencontre le numéro 6, l'instruction break est exécutée, provoquant l'arrêt prématuré de la boucle. En conséquence, seuls les nombres de 1 à 5 seront imprimés.

Explorer l'instruction 'goto'

L'instruction goto en C# offre un moyen de transférer le contrôle à une étiquette spécifiée au sein de la même méthode, dans la même instruction switch, ou dans la même boucle. Bien que goto puisse être un outil puissant pour modifier le flux d'exécution vers les instructions de saut, il est souvent déconseillé dans les pratiques de programmation modernes en raison de son potentiel à rendre le code moins lisible et maintenable. Cependant, il existe des situations où goto peut être utilisé de manière efficace et sécurisée.

Syntaxe

La syntaxe de l'instruction goto en C# est simple :

goto label;
goto label;
$vbLabelText   $csharpLabel

Où l'étiquette est un identifiant suivi d'un deux-points (:), indiquant l'emplacement cible dans le code.

Exemple

Envisagez un scénario où vous souhaitez sortir prématurément d'une boucle imbriquée lorsque qu'une condition spécifique est remplie. Vous pouvez y parvenir en utilisant une instruction goto :

for (int i = 0; i < 5; i++)
{
    for (int j = 0; j < 5; j++)
    {
        if (i * j > 10)
        {
            goto exitLoop;
        }
        Console.WriteLine($"i: {i}, j: {j}");
    }
}
exitLoop:
Console.WriteLine("Exited the nested loop prematurely.");
for (int i = 0; i < 5; i++)
{
    for (int j = 0; j < 5; j++)
    {
        if (i * j > 10)
        {
            goto exitLoop;
        }
        Console.WriteLine($"i: {i}, j: {j}");
    }
}
exitLoop:
Console.WriteLine("Exited the nested loop prematurely.");
$vbLabelText   $csharpLabel

Dans cet exemple, l'instruction goto transfère le contrôle à l'étiquette exitLoop lorsque la condition i * j > 10 est remplie, rompant effectivement la boucle imbriquée.

Présentation de IronPDF - Bibliothèque PDF complète de Iron Software.

IronPDF, développé par Iron Software, est une puissante bibliothèque PDF C# qui fournit une solution tout-en-un pour travailler avec des PDFs dans des projets .NET. Que vous ayez besoin de créer, éditer, exporter, sécuriser, charger ou manipuler des documents PDF, IronPDF a tout ce qu'il vous faut. Voici quelques caractéristiques clés et cas d'utilisation :

  1. Conversion HTML en PDF : Convertissez le contenu HTML en format PDF sans interruption. Vous pouvez générer des PDFs à partir de HTML, MVC, ASPX et même des images.
  2. Signer, Éditer et Lire des PDF : Avec plus de 50 fonctionnalités, IronPDF vous permet de signer, éditer et extraire du contenu des fichiers PDF. Que vous ajoutiez des signatures numériques ou modifiez des PDFs existants, IronPDF rend cela simple.
  3. Support Multi-plateforme : IronPDF est conçu pour C#, F# et VB.NET, et fonctionne sur différentes versions .NET, y compris .NET Core, .NET Standard, et .NET Framework. Il est également disponible for Java, Node.js et Python.
  4. Compatibilité et Environnements :
    • Versions .NET : Prend en charge C#, VB.NET, et F#.
    • Types de projets : Fonctionne avec des applications web (Blazor & WebForms), de bureau (WPF & MAUI), et console.
    • Environnements d'applications : Compatible avec Windows, Linux, Mac, Docker, Azure, AWS, et plus encore.
    • IDEs : S'intègre parfaitement avec Microsoft Visual Studio et JetBrains Rider.
    • Systèmes d'exploitation & Processeurs : Fonctionne sur Windows, Mac, et Linux (x64, x86, ARM).
  5. Normes PDF et Édition :
    • Prend en charge les diverses versions PDF (1.2 - 1.7), PDF/UA, et PDF/A.
    • Définissez les propriétés, la sécurité et la compression des fichiers PDF.
    • Éditez les métadonnées, l'historique des révisions, et la structure du document.
    • Appliquez des modèles de page, des en-têtes, des pieds de page, et des paramètres de page.
  6. Optimisation des Performances :
    • Support complet du multithreading et asynchrone pour une génération PDF efficace.
    • Priorise l'exactitude, la facilité d'utilisation, et la rapidité.

Maintenant que nous sommes au courant de la bibliothèque IronPDF, écrivons une application pour utiliser IronPDF et les instructions continue, break, et goto.

Générer un document PDF en utilisant l'instruction Continue

Tout d'abord, créons une application console Visual Studio.

C# Continue (Comment ça fonctionne pour les développeurs) : Figure 2 - Création d'une application console Visual Studio

Fournissez le nom et l'emplacement du projet.

C# Continue (Comment ça fonctionne pour les développeurs) : Figure 3 - Fournir le nom du projet

Étape suivante, sélectionnez la version .NET requise et cliquez sur Créer.

Installez maintenant IronPDF à l'aide de la commande ci-dessous.

dotnet add package IronPdf --version 2024.4.2

Maintenant, générons un document PDF en utilisant les instructions de contrôle.

using System;
using System.Threading.Tasks;
using IronPdf;

class Program
{
    public static async Task Main()
    {
        Console.WriteLine("Generate PDF document Using IronPDF");

        // Initialize a ChromePdfRenderer to render HTML content to PDF
        var htmlToPdf = new ChromePdfRenderer();
        var content = "<h1>Generate Numbers from 1 to 10, skip 5</h1>";

        // Use continue statement to build HTML content
        for (int i = 0; i < 10; i++)
        {
            if (i == 5)
            {
                continue; // Skip appending number 5 to the content
            }
            content += $"<p>{i}</p>";
        }

        content += "<h1>Generate Numbers from 1 to 10, stop at 7</h1>";

        // Use break statement to terminate loop at 7
        for (int i = 0; i < 10; i++)
        {
            if (i == 7)
            {
                break; // Stop appending numbers after 6
            }
            content += $"<p>{i}</p>";
        }

        // Render the HTML content as a PDF document
        var pdf = await htmlToPdf.RenderHtmlAsPdfAsync(content);
        pdf.SaveAs("AwesomeIronPDF.pdf");

        Console.WriteLine("PDF generated successfully.");
    }
}
using System;
using System.Threading.Tasks;
using IronPdf;

class Program
{
    public static async Task Main()
    {
        Console.WriteLine("Generate PDF document Using IronPDF");

        // Initialize a ChromePdfRenderer to render HTML content to PDF
        var htmlToPdf = new ChromePdfRenderer();
        var content = "<h1>Generate Numbers from 1 to 10, skip 5</h1>";

        // Use continue statement to build HTML content
        for (int i = 0; i < 10; i++)
        {
            if (i == 5)
            {
                continue; // Skip appending number 5 to the content
            }
            content += $"<p>{i}</p>";
        }

        content += "<h1>Generate Numbers from 1 to 10, stop at 7</h1>";

        // Use break statement to terminate loop at 7
        for (int i = 0; i < 10; i++)
        {
            if (i == 7)
            {
                break; // Stop appending numbers after 6
            }
            content += $"<p>{i}</p>";
        }

        // Render the HTML content as a PDF document
        var pdf = await htmlToPdf.RenderHtmlAsPdfAsync(content);
        pdf.SaveAs("AwesomeIronPDF.pdf");

        Console.WriteLine("PDF generated successfully.");
    }
}
$vbLabelText   $csharpLabel

Explication du code

  1. Initialiser et Définir le Contenu : Nous commençons par définir le contenu HTML à inclure dans le PDF.
  2. Utilisation de continue : Dans la première boucle, nous utilisons l'instruction continue pour sauter le numéro 5 lors de la génération de nombres de 1 à 10.
  3. Utilisation de break : Dans la deuxième boucle, nous utilisons l'instruction break pour arrêter la boucle une fois le numéro 7 atteint.
  4. Rendu PDF : Nous utilisons un objet ChromePdfRenderer pour convertir le contenu HTML en un fichier PDF et l'enregistrer.

Sortie

C# Continue (Comment ça fonctionne pour les développeurs) : Figure 4 - Exemple de sortie montrant comment fonctionnent les méthodes continue et break

Meilleures pratiques et considérations

  1. Clarté et Lisibilité : Dans la plupart des cas, utiliser des instructions de contrôle de flux structurées comme break, continue, ou des boucles imbriquées peut rendre votre code plus lisible et compréhensible. Les instructions goto peuvent rendre le code plus difficile à suivre, particulièrement pour les grandes bases de code ou lorsqu'elles sont utilisées de manière excessive.
  2. Éviter les Conséquences Indésirables : Une mauvaise utilisation de goto peut mener à un code spaghetti et rendre difficile la compréhension du comportement du programme. Il est essentiel d'utiliser goto de manière judicieuse et de s'assurer que son utilisation est claire et bien documentée.
  3. Gestion des Erreurs : Un cas d'utilisation commun pour goto est dans les scénarios de gestion des erreurs, où il peut être utilisé pour sauter à une routine de nettoyage ou de gestion des erreurs. Cependant, les bases de code C# modernes utilisent souvent la gestion d'exception structurée (try-catch-finally) pour gérer les erreurs, ce qui offre une approche plus structurée et lisible.
  4. Considérations de Performance : En termes de performance, goto a généralement un impact minimal. Cependant, la principale préoccupation avec goto est la maintenabilité et la lisibilité plutôt que la performance.

Licence (Essai disponible)

Explorer les détails de la licence IronPDF.

Une licence d'essai de développeur est disponible Obtenez une licence d'essai.

Veuillez remplacer la clé dans le fichier appSettings.json montré ci-dessous.

{
  "IronPdf.License.LicenseKey": "The Key Here"
}

Conclusion

En conclusion, les méthodes continue et break sont des outils indispensables pour contrôler l'exécution des boucles en C#. En intégrant stratégiquement ces instructions dans votre code, vous pouvez améliorer son efficacité, sa lisibilité et sa maintenabilité. Bien que l'instruction goto en C# fournisse un mécanisme pour modifier le flux d'exécution, son utilisation doit être abordée avec prudence. Dans la plupart des cas, des instructions de flux de contrôle structurées comme break, continue, ou les boucles imbriquées offrent des solutions plus claires et plus maintenables. Cependant, il existe des scénarios de niche où goto peut être utilisé efficacement et en toute sécurité, comme dans certaines situations de gestion des erreurs. Comme pour toute construction de programmation, il est crucial de peser les compromis et de considérer la lisibilité et la maintenabilité du code lors de la décision d'utiliser goto.

Avec la bibliothèque IronPDF - Solutions PDF Complètes de Iron Software, les développeurs peuvent acquérir des compétences avancées pour développer des applications modernes.

Questions Fréquemment Posées

Comment fonctionne l'instruction 'continue' en C# ?

L'instruction 'continue' en C# est utilisée dans les boucles pour sauter le code restant de l'itération en cours et passer directement à l'itération suivante. Cela est utile pour contourner certaines conditions ou valeurs, comme ignorer le numéro 5 dans une boucle.

Quel est le rôle de l'instruction 'break' dans les boucles ?

L'instruction 'break' est utilisée pour quitter prématurément une boucle lorsqu'une condition spécifique est remplie. Cela est utile pour arrêter la boucle à un certain point, comme cesser les itérations après avoir atteint le numéro 6.

Quand devez-vous utiliser l'instruction 'goto' en C# ?

Bien que l'instruction 'goto' vous permette de sauter à une section de code étiquetée, son utilisation est généralement déconseillée en raison des problèmes potentiels de lisibilité. Elle doit être utilisée dans des scénarios spécifiques où d'autres structures de contrôle seraient moins efficaces ou claires.

Comment IronPDF peut-il être intégré dans des projets C# ?

IronPDF peut être intégré dans des projets C# en utilisant la commande dotnet add package IronPDF --version [version_number], permettant la création, l'édition et la conversion de PDF dans divers environnements .NET.

Quels sont les avantages d'utiliser une bibliothèque PDF complète en C# ?

Une bibliothèque PDF complète comme IronPDF améliore les applications C# en offrant des fonctionnalités robustes de création, d'édition et de conversion de PDF. Elle prend en charge la conversion de HTML en PDF et offre une compatibilité multiplateforme, ce qui en fait un outil polyvalent pour les développeurs.

Comment les instructions de contrôle de flux peuvent-elles améliorer la génération de PDF en C# ?

Les instructions de contrôle de flux comme 'continue' et 'break' peuvent être utilisées pour gérer l'exécution des boucles lors de la génération de PDF, permettant aux développeurs d'ajouter sélectivement du contenu ou d'arrêter la génération de contenu en fonction de conditions spécifiques lors de l'utilisation de IronPDF.

Quelles sont les fonctionnalités de compatibilité de IronPDF ?

IronPDF est compatible avec différentes versions de .NET, y compris .NET Core, .NET Standard et .NET Framework. Il prend en charge plusieurs langues comme C#, VB.NET et F#, et s'intègre avec des IDE comme Microsoft Visual Studio et JetBrains Rider.

Jacob Mellor, Directeur technique @ Team Iron
Directeur technique

Jacob Mellor est directeur de la technologie chez Iron Software et un ingénieur visionnaire pionnier de la technologie C# PDF. En tant que développeur à l'origine de la base de code centrale d'Iron Software, il a façonné l'architecture des produits de l'entreprise depuis sa création, ...

Lire la suite

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me