Das Zerlegen von Tuples in Rust

RustRustBeginner
Jetzt üben

This tutorial is from open-source community. Access the source code

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab lernst du, wie du in Rust Tuples mit der match-Anweisung zerlegen kannst. Der Beispielcode zeigt verschiedene Muster zum Zerlegen von Tuples, wie das Extrahieren von bestimmten Elementen, das Ignorieren bestimmter Elemente und das Verwenden des Platzhalters _, um anzuzeigen, dass der Wert unerheblich ist.

Hinweis: Wenn das Lab keinen Dateinamen angibt, kannst du einen beliebigen Dateinamen verwenden. Beispielsweise kannst du main.rs verwenden und es mit rustc main.rs &&./main kompilieren und ausführen.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL rust(("Rust")) -.-> rust/BasicConceptsGroup(["Basic Concepts"]) rust(("Rust")) -.-> rust/DataTypesGroup(["Data Types"]) rust(("Rust")) -.-> rust/FunctionsandClosuresGroup(["Functions and Closures"]) rust(("Rust")) -.-> rust/MemorySafetyandManagementGroup(["Memory Safety and Management"]) rust/BasicConceptsGroup -.-> rust/variable_declarations("Variable Declarations") rust/DataTypesGroup -.-> rust/string_type("String Type") rust/FunctionsandClosuresGroup -.-> rust/function_syntax("Function Syntax") rust/FunctionsandClosuresGroup -.-> rust/expressions_statements("Expressions and Statements") rust/MemorySafetyandManagementGroup -.-> rust/lifetime_specifiers("Lifetime Specifiers") subgraph Lab Skills rust/variable_declarations -.-> lab-99310{{"Das Zerlegen von Tuples in Rust"}} rust/string_type -.-> lab-99310{{"Das Zerlegen von Tuples in Rust"}} rust/function_syntax -.-> lab-99310{{"Das Zerlegen von Tuples in Rust"}} rust/expressions_statements -.-> lab-99310{{"Das Zerlegen von Tuples in Rust"}} rust/lifetime_specifiers -.-> lab-99310{{"Das Zerlegen von Tuples in Rust"}} end

Tuples

Tuples können in einer match wie folgt zerlegt werden:

fn main() {
    let triple = (0, -2, 3);
    // TODO ^ Versuche verschiedene Werte für `triple`

    println!("Erzähl mir etwas über {:?}", triple);
    // Match kann verwendet werden, um ein Tuple zu zerlegen
    match triple {
        // Zerlege das zweite und dritte Element
        (0, y, z) => println!("Das erste ist `0`, `y` ist {:?} und `z` ist {:?}", y, z),
        (1,..)  => println!("Das erste ist `1` und der Rest ist unerheblich"),
        (.., 2)  => println!("Das letzte ist `2` und der Rest ist unerheblich"),
        (3,.., 4)  => println!("Das erste ist `3`, das letzte ist `4` und der Rest ist unerheblich"),
        // `..` kann verwendet werden, um den Rest des Tuples zu ignorieren
        _      => println!("Es spielt keine Rolle, was sie sind"),
        // `_` bedeutet, dass der Wert nicht an eine Variable gebunden wird
    }
}

Zusammenfassung

Herzlichen Glückwunsch! Du hast das Tuples-Lab abgeschlossen. Du kannst in LabEx weitere Labs absolvieren, um deine Fähigkeiten zu verbessern.