Unterschied zwischen if-else und switch

Autor: Laura McKinney
Erstelldatum: 3 April 2021
Aktualisierungsdatum: 5 Kann 2024
Anonim
If-Else-Switch - Java Tutorial 7 ● Gehe auf SIMPLECLUB.DE/GO & werde #EinserSchüler
Video: If-Else-Switch - Java Tutorial 7 ● Gehe auf SIMPLECLUB.DE/GO & werde #EinserSchüler

Inhalt


"If-else" und "switch" sind Auswahlanweisungen. Die Auswahlanweisungen übertragen den Programmfluss auf den jeweiligen Anweisungsblock, je nachdem, ob die Bedingung "wahr" oder "falsch" ist. Der grundlegende Unterschied zwischen if-else- und switch-Anweisungen besteht darin, dass die if-else-Anweisung „die Ausführung der Anweisungen anhand der Auswertung des Ausdrucks in if-Anweisungen auswählt“. Die switch-Anweisung „wählt die Ausführung der Anweisung häufig anhand eines Tastaturbefehls aus“.

  1. Vergleichstabelle
  2. Definition
  3. Hauptunterschiede
  4. Fazit

Vergleichstabelle

Grundlage für den VergleichansonstenSchalter
BasicWelche Anweisung ausgeführt wird, hängt von der Ausgabe des Ausdrucks in der if-Anweisung ab.Welche Anweisung ausgeführt wird, entscheidet der Benutzer.
AusdruckDie if-else-Anweisung verwendet mehrere Anweisungen für mehrere Auswahlmöglichkeiten.Die switch-Anweisung verwendet einen einzelnen Ausdruck für mehrere Auswahlmöglichkeiten.
Testenif-else-Anweisungstest auf Gleichheit sowie auf logischen Ausdruck.switch-Anweisungstest nur auf Gleichheit.
AuswertungDie if-Anweisung wertet einen Integer-, Zeichen-, Zeiger- oder Gleitkommatyp oder einen Booleschen Typ aus.Die switch-Anweisung wertet nur Zeichen oder Ganzzahlen aus.
Ablauf der AusführungEntweder wird die Anweisung ausgeführt oder die Anweisung wird ausgeführt.switch-Anweisung führe einen Fall nach dem anderen aus, bis eine break-Anweisung erscheint oder das Ende der switch-Anweisung erreicht ist.
StandardausführungWenn die Bedingung innerhalb von if-Anweisungen falsch ist, wird standardmäßig die else-Anweisung ausgeführt, wenn sie erstellt wird.Wenn die Bedingung in switch-Anweisungen mit keinem der Fälle übereinstimmt, werden für diese Instanz die Standardanweisungen ausgeführt, wenn sie erstellt werden.
BearbeitungEs ist schwierig, die if-else-Anweisung zu bearbeiten, wenn die verschachtelte if-else-Anweisung verwendet wird.Schalterfälle lassen sich leicht bearbeiten, da sie leicht erkannt werden.

Definition von if-else

Die if-else-Anweisungen gehören zu Auswahlanweisungen in OOP. Die allgemeine Form der if-else-Anweisungen lautet wie folgt


if (Ausdruck) {Anweisung (en)} else {Anweisung (en)}

Wobei "if" und "else" die Schlüsselwörter sind und die Anweisungen eine einzelne Anweisung oder ein Anweisungsblock sein können. Der Ausdruck wird für jeden Wert ungleich Null als „wahr“ und für Null als „falsch“ bewertet.
Der Ausdruck in der if-Anweisung kann eine Ganzzahl, ein Zeichen, einen Zeiger, einen Gleitkommawert oder einen Booleschen Typ enthalten. Die else-Anweisung ist in einer if-else-Anweisung optional. Wenn der Ausdruck true zurückgibt, werden die Anweisungen in der if-Anweisung ausgeführt. Wenn der Ausdruck false zurückgibt, werden die Anweisungen in der else-Anweisung ausgeführt. Wenn eine else-Anweisung nicht erstellt wurde, wird keine Aktion ausgeführt, und die Steuerung des Programms springt heraus einer if-else-Anweisung.

Lassen Sie uns mit einem Beispiel verstehen.

int i = 45, j = 34; if (i == 45 & j == 34) {cout << "i =" <

Definition von Schalter

Die switch-Anweisung ist eine Multiple-Choice-Auswahlanweisung. Die allgemeine Form der switch-Anweisung lautet wie folgt

switch (Ausdruck) {case Konstante1: Anweisung (en); brechen; case constant2: statement (s); brechen; case constant3: statement (s); brechen; . . Standardanweisung (en); }

Wobei der Ausdruck eine Ganzzahl oder Zeichenkonstanten auswertet. Der Ausdruck hier wird nur für Gleichheit ausgewertet. Der Ausdruck wird anhand der in den case-Anweisungen enthaltenen Konstanten überprüft. Wenn eine Übereinstimmung gefunden wird, werden die Anweisungen für diesen Fall ausgeführt, bis eine Unterbrechung auftritt. Da die break-Anweisung in den case-Anweisungen optional ist, wird die Ausführung erst am Ende der switch-Anweisung angehalten, wenn die break-Anweisung nicht vorhanden ist.
Der Ausdruck enthält nur einen einzelnen Ausdruck. Die switch-Anweisung verwendet häufig einen Tastaturbefehl, um eine der mehreren case-Anweisungen auszuwählen.

int c; cout << "wähle den Wert von 1 bis 3"; cin >> i; Schalter (i) {Fall 1: cout << "Sie wählen dunkles choclate"; brechen; Fall 2: cout << "Sie wählen Süßigkeiten"; brechen; Fall 3: cout << "du wählst lollypop"; brechen; . . Standard cout << "Sie wählen nichts"; }

Hier entscheidet der Wert von "i", welcher Fall ausgeführt werden soll. Wenn ein Benutzer einen anderen Wert als "i" als 1, 2 oder 3 angibt, wird der Standardfall ausgeführt.

  1. Ausdruck innerhalb der if-Anweisung Entscheiden Sie, ob die Anweisungen innerhalb des if-Blocks oder unter dem else-Block ausgeführt werden sollen. Andererseits entscheidet der Ausdruck in der switch-Anweisung, welcher Fall ausgeführt werden soll.
  2. Sie können mehrere if-Anweisungen verwenden, um mehrere Anweisungen auszuwählen. In switch haben Sie nur einen Ausdruck für die Mehrfachauswahl.
  3. Die if-esle-Anweisung prüft sowohl auf Gleichheit als auch auf logischen Ausdruck. Auf der anderen Seite prüft switch nur auf Gleichheit.
  4. Die if-Anweisung wertet einen Integer-, Zeichen-, Zeiger- oder Gleitkommatyp oder einen Booleschen Typ aus. Andererseits wertet die switch-Anweisung nur Zeichen oder einen ganzzahligen Datentyp aus.
  5. Die Reihenfolge der Ausführung entspricht entweder der Anweisung unter, wenn der Block ausgeführt wird, oder den Anweisungen unter, wenn die Blockanweisung ausgeführt wird. Andererseits entscheidet der Ausdruck in der switch-Anweisung, welcher Fall ausgeführt werden soll, und wenn Sie nach jedem Fall keine break-Anweisung anwenden, wird sie bis zum Ende der switch-Anweisung ausgeführt.
  6. Wenn der Ausdruck innerhalb falsch ist, wird die Anweisung innerhalb des else-Blocks ausgeführt. Wenn sich der Ausdruck in der switch-Anweisung als falsch herausstellt, werden die Standardanweisungen ausgeführt.
  7. Es ist schwierig, if-else-Anweisungen zu bearbeiten, da es mühsam ist, zu verfolgen, wo die Korrektur erforderlich ist. Andererseits ist es einfach, switch-Anweisungen zu bearbeiten, da sie leicht zu verfolgen sind.

Fazit:

Die switch-Anweisung ist einfach zu bearbeiten, da separate Groß- und Kleinschreibung für verschiedene Anweisungen erstellt wurden, während es in verschachtelten if-else-Anweisungen schwierig ist, die zu bearbeitenden Anweisungen zu identifizieren.