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, wenn i gleich 5 ist, die continue-Anweisung ausgeführt, wodurch der restliche 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 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 durchläuft die Schleife 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 auf ein angegebenes Label innerhalb derselben Methode, innerhalb derselben switch-Anweisung oder innerhalb derselben Schleife zu übertragen. Während goto ein leistungsfähiges Werkzeug zum Ändern des Ablaufs der Ausführung sein kann, um zu Sprunganweisungen zu wechseln, wird es in modernen Programmierpraktiken aufgrund seines Potenzials, Code weniger lesbar und wartbar zu machen, oft abgelehnt. 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 Kontrolle auf das exitLoop Label, wenn die Bedingung i * j > 10 erfüllt ist, und bricht dadurch effektiv die verschachtelte Schleife.

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: Konvertieren Sie HTML-Inhalte nahtlos in das PDF-Format. Sie können PDFs aus HTML, MVC, ASPX und sogar aus Bildern erzeugen.
  2. Signieren, Bearbeiten und Lesen von PDFs: Mit über 50 Funktionen ermöglicht IronPDF Ihnen, PDF-Dateien zu signieren, zu bearbeiten und Inhalte daraus zu extrahieren. 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 entwickelt und läuft auf verschiedenen .NET-Versionen, einschließlich .NET Core, .NET Standard und .NET Framework. Es ist auch for Java, Node.js und Python verfügbar.
  4. Kompatibilität und Umgebungen:
    • .NET-Versionen: Unterstützt C#, VB.NET und F#.
    • Projekttypen: Funktioniert mit Web (Blazor & WebForms), Desktop (WPF & MAUI) und Konsolenanwendungen.
    • App-Umgebungen: Kompatibel mit Windows, Linux, Mac, Docker, Azure, AWS und mehr.
    • IDEs: Integriert sich nahtlos mit Microsoft Visual Studio und JetBrains Rider.
    • OS & Prozessoren: Läuft auf 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 - Erstellung 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. Initialisieren und Definieren von Inhalten: Wir beginnen mit der Definition von HTML-Inhalten, die im PDF enthalten sein sollen.
  2. Verwendung von continue: In der ersten Schleife verwenden wir die continue-Anweisung, um die Zahl 5 zu überspringen, wenn Zahlen von 1 bis 10 generiert werden.
  3. Verwendung von break: In der zweiten Schleife verwenden wir die break-Anweisung, um die Schleife zu stoppen, sobald die Zahl 7 erreicht ist.
  4. PDF-Bereitstellung: Wir verwenden ein ChromePdfRenderer-Objekt, um die HTML-Inhalte in eine PDF-Datei zu konvertieren und zu speichern.

Ausgabe

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

Beste Praktiken und Überlegungen

  1. Klarheit und Lesbarkeit: In den meisten Fällen kann die Verwendung von strukturierten Kontrollablaufanweisungen wie break, continue oder verschachtelten 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 Konsequenzen: Die missbräuchliche Verwendung von goto kann zu Spaghetti-Code führen und es schwierig machen, das Programmverhalten zu verstehen. 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 ist in Fehlerbehandlungsszenarien, wo es verwendet werden kann, um zu einer Bereinigungs- oder Fehlerbehandlungsroutine zu springen. Moderne C#-Codebasen verwenden jedoch oft strukturierte Ausnahmebehandlung (try-catch-finally) für die Fehlerbehandlung, die einen strukturierteren und lesbareren Ansatz bietet.
  4. Leistungsüberlegungen: In Bezug auf die Leistung hat goto im Allgemeinen minimalen Einfluss. 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 Pionierarbeit in der C# PDF-Technologie leistet. Als der ursprüngliche Entwickler hinter der Kern-Codebasis von Iron Software hat er die Produktarchitektur des Unternehmens seit seiner Gründung geprägt und es zusammen mit CEO ...

Weiterlesen

Iron Support Team

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