[SWIFT] Einführung in die schnelle Übungsausgabe Kapitel 5

Steuerungssyntax

Bedingte Verzweigung, Wiederholung, verzögerte Ausführung, Mustervergleich Eine Syntax, die den Ausführungsfluss eines Programms steuert. Es gibt bedingte Verzweigungen und Wiederholungen bei der Steuerung des Steuerungsflusses, und sie können frei kombiniert und ausgeführt werden.

Verzweigen Sie abhängig vom Erfolg oder Misserfolg der if-Anweisungsbedingung

chapter5.swift


let value = 5

if value <= 4 {
    print("Wert ist 4 oder weniger")
}else {
    print("Wert ist 5 oder mehr")
}

if let-Anweisung Verzweigen Sie je nach Vorhandensein oder Fehlen eines Werts

Ein optionaler Typ ist ein Datentyp, der die Zuweisung von Null zu einer Variablen ermöglicht, und umgekehrt kann ein nicht optionaler Typ Null nicht zuweisen. Optionale Variablen haben ein "?" Oder "!" Am Ende des Datentyps.

chapter5.swift


let optionalA = Optional(1)

if let a = optionalA {
    print("Wert ist\(a)ist")
}else {
    print("Wert existiert nicht")
}

let optionalB = Optional("b")
let optionalC = Optional("c")

if let b = optionalB, let c = optionalC{
    print("Wert ist\(b)Wann\(c)Wissen Sie")
}else {
    print("Abwesend")
}

Guardl Statement Zweig, der vorzeitig abreist, wenn die Bedingungen nicht erfüllt sind

Die Guard-Anweisung ist eine Syntax, die beschreibt, was zu tun ist, wenn die Bedingungen nicht erfüllt sind. Wenn die Bedingungen nicht erfüllt sind, muss ein Prozess geschrieben werden, um die Methode zu beenden, den iterativen Prozess zu beenden oder den Bereich zu verlassen.

Code, der die Verarbeitung beendet, wenn die Bedingung mithilfe der Guard-Anweisung nicht erfüllt ist

chapter5.swift


//Wache bedingter Ausdruck sonst{
//Anweisung, die ausgeführt wird, wenn der bedingte Ausdruck falsch ist
//Es ist erforderlich, zu der Scope-Anweisung zurückzukehren, in der die Guard-Anweisung beschrieben ist
//}

func someFunction() {
    let value = -1
    
    guard value >= 0 else {
        print("Wert kleiner als 0")
        return
    }
    print(value)
}
someFunction()

Erzwungener Ausstieg außerhalb des Geltungsbereichs der Wachaussage

chapter5.swift


func printIfPositive(_ a: Int) {
    guard a > 0 else {
        return
    }
    print(a)
}
printIfPositive(6)

Zugriff auf Variablen und Konstanten, die in der Guard-Anweisung deklariert sind

Der Unterschied zwischen Guard Let Statement und If Let Der Punkt, an dem Variablen und Konstanten in der Guard-Let-Anweisung deklariert werden, kann nach der Guard-Let-Anweisung verwendet werden

chapter5.swift


func someFONCTION() {
    let a :Any = 3
    
    guard let int = a as? Int else {
        print("a ist kein Int-Typ")
        return
    }
    print("Der Wert ist vom Typ Int\(int)ist")
}
someFONCTION()

func checkInt(num:Int) {
    guard num >= 0 else {
        print("Es ist ein Minus")
        return
    }
    print("Ist ein Plus")
}
 
checkInt(num:-10)
checkInt(num:10)

switch-Anweisung Nach mehreren Musterübereinstimmungen verzweigen

chapter5.swift


let r = -1
switch  r {
case Int.min ..< 0:
    print("r ist eine negative Zahl")
    
case 1 ..< Int.max:
    print("r ist eine positive Zahl")
default:
    print("a ist 0")
}

Überprüfung der Vollständigkeit des Falles

chapter5.swift


enum SomeEnum {
    case foo
    case bar
    case baz
}

let foo = SomeEnum.foo

switch foo {
case .foo:
    print(".foo")
    
case .bar:
    print(".bar")
    
case .baz:
    print(".baz")

}

where-Schlüsselwort Fügen Sie Bedingungen hinzu, die dem Fall entsprechen

chapter5.swift


let optionalP: Int? = 12

switch optionalP {
case .some(let a) where a > 10:
    print("Wert größer als 10\(a)Existiert")
default:
    print("Wert existiert nicht oder ist kleiner als 10")
}

let g = 1

switch g {
case 1:
    print("Wird durchgeführt")
    break
    print("Nicht ausgeführt")
default:
    break
}

Recommended Posts

Einführung in die schnelle Übungsausgabe Kapitel 5
Einführung in die schnelle Übungsausgabe Kapitel 5 Teil 2
Einführung in die schnelle Übungsausgabe Kapitel 4 Typ, der die Sammlung darstellt Teil 1
Einführung in die schnelle Übungsausgabe Typ, der die Sammlung von Kapitel 4 Teil 2 darstellt
Ausgabe des Buches "Einführung in Java"
Einführung in Ruby 2
Einführung in web3j
Einführung in Micronaut 1 ~ Einführung ~
[Java] Einführung in Java
Einführung in die Migration
Einführung in Java
Einführung in Doma
Java-Leistung Kapitel 1 Einführung
Einführung in JAR-Dateien
Einführung in Ratpack (8) -Session
Einführung in die Bitarithmetik
Einführung in Ratpack (6) --Promise
Einführung in Ratpack (9) - Thymeleaf
Einführung in PlayFramework 2.7 ① Übersicht
Einführung in das Android-Layout
Einführung in Entwurfsmuster (Einführung)
Einführung in die praktische Programmierung
Einführung in den Befehl javadoc
Einführung in den Befehl jar
[Trainieren! ] Einführung von JFrame (Erklärung bis zur Bildschirmerstellung)
Einführung in Ratpack (2) -Architektur
Einführung in den Lambda-Stil
Einführung in den Java-Befehl
Einführung in die Keycloak-Entwicklung
Einführung in den Befehl javac
Einführung in Entwurfsmuster (Builder)
Einführung in die Android App-Entwicklung
Einführung in Ratpack (5) --Json & Registry
Einführung in Metabase ~ Umgebungskonstruktion ~
Einführung in Ratpack (7) - Guice & Spring
(Punktinstallation) Einführung in Java8_Impression
Einführung in Entwurfsmuster (Composite)
Einführung in Micronaut 2 ~ Unit Test ~
JavaDoc in Word-Datei ausgeben
Einführung in JUnit (Studiennotiz)
Einführung in Spring Boot ~ ~ DI ~
Einführung in Designmuster (Fliegengewicht)
[Java] Einführung in den Lambda-Ausdruck
Einführung in Spring Boot ② ~ AOP ~
Einführung in Apache Beam (2) ~ ParDo ~
XML-Baum in Datei ausgeben
Einführung in die EHRbase 2-REST-API
Praxis zur Vereinheitlichung der Dialogimplementierung
Einführung in Entwurfsmuster Prototyp