Zum Fußzeileninhalt springen
.NET HILFE

C# Continue (Funktionsweise für Entwickler)

Steuerflussanweisungen sind in der Programmierung entscheidend, da sie die Ausführungsreihenfolge von Anweisungen innerhalb eines Programms bestimmen. In C# gibt es drei grundlegende Anweisungen zur Steuerung von Schleifen: 'continue', 'break' und 'goto'. Diese Anweisungen geben Programmierern die Möglichkeit, den Ausführungsfluss innerhalb von Schleifen zu ändern, um die Codeeffizienz und Lesbarkeit zu verbessern. In diesem Artikel vertiefen wir uns in die Feinheiten der continue- und break-Methoden in C# und untersuchen deren Syntax, Anwendungen und Best Practices. Später im Artikel werden wir auch etwas über IronPDF - eine robuste C#-PDF-Bibliothek von Iron Software erfahren, um PDF-Dokumente zu lesen und zu schreiben.

Verständnis der 'continue;'-Anweisung

Die continue-Anweisung wird innerhalb von Schleifenstrukturen verwendet, um den verbleibenden Codeblock zu überspringen und zur nächsten Iteration der Schleife überzugehen. Sie sagt im Wesentlichen der Programmsteuerung, den verbleibenden Code der aktuellen Iteration zu überspringen und zur nächsten Iteration überzugehen.

Syntax

continue;
continue;
$vbLabelText   $csharpLabel

Beispiel

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

In diesem Beispiel wird die continue-Anweisung ausgeführt, wenn i gleich 5 ist, wodurch der verbleibende Code innerhalb der Schleife für diese Iteration übersprungen wird. Als Ergebnis wird die Zahl 5 nicht gedruckt und die Schleife geht zur nächsten Iteration über.

Ausgabe

C# Continue (Wie es für Entwickler funktioniert): Abbildung 1 - Konsolenausgabe zeigt, dass der Fall 5 aufgrund der Continue-Anweisung übersprungen wird

Erforschung der 'break;'-Methode

Im Gegensatz zu continue wird die break-Anweisung verwendet, um eine Schleife vorzeitig zu beenden. Wenn sie auftritt, beendet sie die Ausführung der Schleife, unabhängig von der Bedingung der Schleife. Es wird häufig verwendet, um eine Schleife wie z. B. eine while-Schleife frühzeitig zu beenden, wenn eine bestimmte Bedingung erfüllt ist.

Beispiel

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

In diesem Beispiel iteriert die Schleife durch das numbers-Array. Wenn sie auf die Nummer 6 trifft, wird die break-Anweisung ausgeführt, wodurch die Schleife vorzeitig beendet wird. Als Folge werden nur die Zahlen 1 bis 5 gedruckt.

Untersuchung der Anweisung 'goto;'

Die goto-Anweisung in C# bietet eine Möglichkeit, die Steuerung zu einem angegebenen Label innerhalb derselben Methode, innerhalb derselben switch-Anweisung oder innerhalb derselben Schleife zu übertragen. Obwohl goto ein mächtiges Werkzeug zum Ändern des Ausführungsflusses für Sprunganweisungen sein kann, wird es in modernen Programmierpraktiken häufig abgelehnt, da es den Code möglicherweise weniger lesbar und wartbar macht. Es gibt jedoch Situationen, in denen goto effektiv und sicher eingesetzt werden kann.

Syntax

Die Syntax der goto-Anweisung in C# ist einfach:

goto label;
goto label;
$vbLabelText   $csharpLabel

Wo das Label ein Bezeichner ist, gefolgt von einem Doppelpunkt (:), der den Zielort im Code angibt.

Beispiel

Betrachten Sie ein Szenario, in dem Sie eine verschachtelte Schleife vorzeitig verlassen möchten, wenn eine bestimmte Bedingung erfüllt ist. Dies kann mit einer goto-Anweisung erreicht werden:

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

In diesem Beispiel überträgt die goto-Anweisung die Steuerung zum exitLoop-Label, wenn die Bedingung i * j > 10 erfüllt ist, wodurch effektiv die verschachtelte Schleife beendet wird.

Einführung in IronPDF - Umfassende PDF-Bibliothek von Iron Software.

IronPDF, entwickelt von Iron Software, ist eine leistungsstarke C#-PDF-Bibliothek, die eine All-in-One-Lösung für die Arbeit mit PDFs in .NET-Projekten bietet. Ob Sie PDF-Dokumente erstellen, bearbeiten, exportieren, sichern, laden oder manipulieren müssen, IronPDF hat alles, was Sie brauchen. Hier sind einige wichtige Funktionen und Anwendungsfälle:

  1. HTML-zu-PDF-Konvertierung: HTML-Inhalte nahtlos in das PDF-Format konvertieren. Sie können PDFs aus HTML, MVC, ASPX und sogar aus Bildern erzeugen.
  2. PDFs signieren, bearbeiten und lesen: Mit über 50 Funktionen ermöglicht Ihnen IronPDF das Signieren, Bearbeiten und Extrahieren von Inhalten aus PDF-Dateien. Ob Sie digitale Signaturen hinzufügen oder vorhandene PDFs ändern, IronPDF macht es einfach.
  3. Plattformübergreifende Unterstützung: IronPDF ist für C#, F# und VB.NET konzipiert und läuft auf verschiedenen .NET-Versionen, einschließlich .NET Core, .NET Standard und .NET Framework. Es ist auch für Java, Node.js und Python verfügbar.
  4. Kompatibilität und Umgebungen:
    • .NET-Versionen: Unterstützt C#, VB.NET und F#.
    • Projekttypen: Funktioniert mit Webanwendungen (Blazor & WebForms), Desktopanwendungen (WPF & MAUI) und Konsolenanwendungen.
    • App-Umgebungen: Kompatibel mit Windows, Linux, Mac, Docker, Azure, AWS und mehr.
    • IDEs: Lässt sich nahtlos in Microsoft Visual Studio und JetBrains Rider integrieren.
    • Betriebssysteme & Prozessoren: Läuft unter Windows, Mac und Linux (x64, x86, ARM).
  5. PDF-Standards und -Bearbeitung:
    • Unterstützt verschiedene PDF-Versionen (1.2 - 1.7), PDF/UA und PDF/A.
    • Legen Sie Eigenschaften, Sicherheit und Kompression für PDF-Dateien fest.
    • Metadaten, Revisionshistorie und Dokumentstruktur bearbeiten.
    • Seitenvorlagen, Kopf- und Fußzeilen sowie Seiteneinstellungen anwenden.
  6. Leistungsoptimierung:
    • Volle Unterstützung für Multithreading und asynchrone Verarbeitung für effiziente PDF-Erstellung.
    • Priorisiert Genauigkeit, Benutzerfreundlichkeit und Geschwindigkeit.

Nun, da wir über die IronPDF-Bibliothek Bescheid wissen, lassen Sie uns eine Anwendung schreiben, die IronPDF sowie die continue-, break- und goto-Anweisung verwendet.

PDF-Dokument mit Continue Statement generieren

Zuerst erstellen wir eine Konsolenanwendung in Visual Studio.

C# Continue (Wie es für Entwickler funktioniert): Abbildung 2 - Erstellen einer Visual-Studio-Konsolenanwendung

Geben Sie den Projektnamen und den Speicherort an.

C# Continue (Wie es für Entwickler funktioniert): Abbildung 3 - Projektname angeben

Nächster Schritt, wählen Sie die erforderliche .NET-Version aus und klicken Sie auf Erstellen.

Nun installieren Sie IronPDF mit dem untenstehenden Befehl.

dotnet add package IronPdf --version 2024.4.2

Lassen Sie uns nun ein PDF-Dokument mit den Steueranweisungen erzeugen.

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

Code-Erklärung

  1. Inhalt initialisieren und definieren: Wir beginnen mit der Definition des HTML-Inhalts, der in die PDF-Datei aufgenommen werden soll.
  2. Verwendung von continue : In der ersten Schleife verwenden wir die continue -Anweisung, um die Zahl 5 bei der Generierung der Zahlen von 1 bis 10 zu überspringen.
  3. Verwendung von break : In der zweiten Schleife verwenden wir die break -Anweisung, um die Schleife zu beenden, sobald die Zahl 7 erreicht ist.
  4. PDF-Erstellung: Wir verwenden ein ChromePdfRenderer Objekt, um den HTML-Inhalt in eine PDF-Datei umzuwandeln und diese zu speichern.

Ausgabe

C# Continue (Wie es für Entwickler funktioniert): Abbildung 4 - Beispielausgabe, die zeigt, wie die Continue- und Break-Methode funktioniert

Beste Praktiken und Überlegungen

  1. Klarheit und Lesbarkeit: In den meisten Fällen kann die Verwendung strukturierter Kontrollflussanweisungen wie break , continue oder verschachtelter Schleifen Ihren Code lesbarer und verständlicher machen. Die goto-Anweisungen können den Code schwerer nachvollziehbar machen, insbesondere bei größeren Codebasen oder wenn sie übermäßig verwendet werden.
  2. Vermeidung unbeabsichtigter Folgen: Der Missbrauch von goto kann zu Spaghetti-Code führen und es erschweren, das Verhalten des Programms nachzuvollziehen. Es ist wichtig, goto mit Bedacht einzusetzen und sicherzustellen, dass seine Verwendung klar und gut dokumentiert ist.
  3. Fehlerbehandlung: Ein häufiger Anwendungsfall für goto sind Fehlerbehandlungsszenarien, in denen es verwendet werden kann, um zu einer Aufräum- oder Fehlerbehandlungsroutine zu springen. Moderne C#-Codebasen verwenden jedoch oft eine strukturierte Ausnahmebehandlung (try-catch-finally), die einen strukturierteren und lesbareren Ansatz bietet.
  4. Leistungsaspekte: In Bezug auf die Leistung hat goto im Allgemeinen nur minimale Auswirkungen. Das Hauptanliegen bei goto ist jedoch die Wartbarkeit und Lesbarkeit und nicht die Leistung.

Lizenz (Testversion verfügbar)

Erfahren Sie mehr über die IronPDF-Lizenzierungsdetails.

Eine Testentwickler-Testlizenz ist verfügbar Holen Sie sich eine Testlizenz.

Bitte ersetzen Sie den Schlüssel in der unten gezeigten appSettings.json-Datei.

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

Abschluss

Zusammenfassend sind die continue- und break-Methoden unverzichtbare Werkzeuge zur Steuerung der Schleifenausführung in C#. Indem Sie diese Anweisungen strategisch in Ihren Code integrieren, können Sie dessen Effizienz, Lesbarkeit und Wartbarkeit verbessern. Während die goto-Anweisung in C# einen Mechanismus zur Änderung des Ausführungsflusses bietet, sollte ihre Verwendung mit Vorsicht angegangen werden. In den meisten Fällen bieten strukturierte Steuerflussanweisungen wie break, continue oder verschachtelte Schleifen klarere und wartbarere Lösungen. Es gibt jedoch Nischen-Szenarien, in denen goto effektiv und sicher eingesetzt werden kann, z. B. in bestimmten Fehlerbehandlungssituationen. Wie bei jedem Programmierkonstrukt ist es entscheidend, die Kompromisse abzuwägen und die Lesbarkeit und Wartbarkeit des Codes zu berücksichtigen, wenn man entscheidet, ob man goto verwenden möchte.

Zusammen mit der IronPDF - umfassenden PDF-Lösungen-Bibliothek von Iron Software können Entwickler fortgeschrittene Fähigkeiten erlangen, um moderne Anwendungen zu entwickeln.

Häufig gestellte Fragen

Wie funktioniert die 'continue'-Anweisung in C#?

Die 'continue'-Anweisung in C# wird innerhalb von Schleifen verwendet, um den restlichen Code in der aktuellen Iteration zu überspringen und direkt zur nächsten Iteration überzugehen. Dies ist nützlich, um bestimmte Bedingungen oder Werte zu umgehen, wie das Überspringen der Zahl 5 in einer Schleife.

Welche Rolle spielt die 'break'-Anweisung in Schleifen?

Die 'break'-Anweisung wird verwendet, um eine Schleife vorzeitig zu beenden, wenn eine bestimmte Bedingung erfüllt ist. Dies ist hilfreich, um die Schleife an einem bestimmten Punkt zu beenden, zum Beispiel nachdem die Zahl 6 erreicht wurde.

Wann sollten Sie die 'goto'-Anweisung in C# verwenden?

Obwohl die 'goto'-Anweisung es ermöglicht, zu einem gekennzeichneten Abschnitt des Codes zu springen, wird sie im Allgemeinen aufgrund potenzieller Lesbarkeitsprobleme nicht empfohlen. Sie ist am besten in spezifischen Szenarien zu verwenden, in denen andere Kontrollstrukturen weniger effizient oder klar wären.

Wie kann IronPDF in C#-Projekte integriert werden?

IronPDF kann in C#-Projekte integriert werden, indem der Befehl dotnet add package IronPdf --version [version_number] verwendet wird, was die Erstellung, Bearbeitung und Konvertierung von PDFs in verschiedenen .NET-Umgebungen ermöglicht.

Was sind die Vorteile der Verwendung einer umfassenden PDF-Bibliothek in C#?

Eine umfassende PDF-Bibliothek wie IronPDF verbessert C#-Anwendungen, indem sie robuste Funktionen für die Erstellung, Bearbeitung und Konvertierung von PDFs bietet. Sie unterstützt die HTML-zu-PDF-Konvertierung und bietet plattformübergreifende Unterstützung, was sie zu einem vielseitigen Werkzeug für Entwickler macht.

Wie können Kontrollflussanweisungen die PDF-Erzeugung in C# verbessern?

Kontrollflussanweisungen wie 'continue' und 'break' können verwendet werden, um die Ausführung von Schleifen während der PDF-Erzeugung zu steuern, wodurch Entwickler selektiv Inhalte hinzufügen oder die Inhaltserzeugung auf der Grundlage bestimmter Bedingungen stoppen können, wenn sie IronPDF verwenden.

Was sind die Kompatibilitätsmerkmale von IronPDF?

IronPDF ist kompatibel mit verschiedenen .NET-Versionen, einschließlich .NET Core, .NET Standard und .NET Framework. Es unterstützt mehrere Sprachen wie C#, VB.NET und F# und integriert sich in IDEs wie Microsoft Visual Studio und JetBrains Rider.

Jacob Mellor, Chief Technology Officer @ Team Iron
Chief Technology Officer

Jacob Mellor ist Chief Technology Officer bei Iron Software und ein visionärer Ingenieur, der führend in der C# PDF-Technologie ist. Als ursprünglicher Entwickler der Iron Software-Kerncodebasis hat er die Produktarchitektur des Unternehmens seit seiner Gründung gestaltet und zusammen mit CEO Cameron Rimington in ein Unternehmen ...

Weiterlesen