Ausdrücke und Anweisungen
Der letzte Ausdruck
Ausdrücke und Anweisungen ist eine kostenlose Learn Rust Coding-Lektion auf CoddyKit. Dies ist Lektion 2 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Learn Rust Coding-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Learn Rust Coding-Kurs umfasst insgesamt 4 Lektionen.
Anweisungen vs. Ausdrücke
Rust unterscheidet zwei Arten von Code:
- Anweisungen führen eine Aktion aus und geben keinen Wert zurück.
- Ausdrücke werden zu einem Wert ausgewertet.
Diese Unterscheidung prägt die Rückgabe von Werten aus Funktionen.
fn main() {
let x = 5; // a let statement
let y = x + 1; // x + 1 is an expression
println!("{}", y);
}let ist eine Anweisung
Eine let-Bindung ist eine Anweisung. Sie gibt keinen Wert zurück, daher können Sie nicht let a = (let b = 6); schreiben.
fn main() {
let a = 6;
// let c = (let d = 6); // error: let is not an expression
println!("{}", a);
}Ausdrücke werden zu Werten ausgewertet
Arithmetik, Funktionsaufrufe und Literale sind allesamt Ausdrücke, weil sie einen Wert erzeugen.
52 + 3square(4)
fn main() {
let v = 2 + 3 * 4;
println!("{}", v);
}Blöcke sind Ausdrücke
Ein Block { ... } ist selbst ein Ausdruck. Sein Wert ist der letzte Ausdruck darin, sofern dieser kein abschließendes Semikolon hat.
fn main() {
let y = {
let x = 3;
x + 1
};
println!("y is {}", y);
}Das Semikolon ist wichtig
Ein Semikolon verwandelt einen Ausdruck in eine Anweisung und verwirft seinen Wert.
x + 1— Ausdruck, liefert einen Wert.x + 1;— Anweisung, liefert().
fn main() {
let y = {
let x = 3;
x + 1 // no semicolon: this is the block's value
};
println!("{}", y);
}Der letzte Ausdruck wird zurückgegeben
In einer Funktion wird der letzte Ausdruck ohne Semikolon zum Rückgabewert. Das ist idiomatisches Rust.
fn main() {
println!("{}", five());
}
fn five() -> i32 {
5
}Ein Semikolon verhindert die Rückgabe
Wenn Sie versehentlich ein Semikolon an die letzte Zeile setzen, gibt die Funktion () statt Ihres Werts zurück — ein häufiger Fehler von Anfängern.
fn main() {
println!("{}", plus_one(10));
}
fn plus_one(n: i32) -> i32 {
n + 1 // correct: no semicolon
}if als Ausdruck
Da if ein Ausdruck ist, können Sie sein Ergebnis einer Variablen zuweisen. Beide Zweige müssen denselben Typ liefern.
fn main() {
let condition = true;
let number = if condition { 5 } else { 6 };
println!("number is {}", number);
}loop als Ausdruck
Eine loop-Schleife kann über break einen Wert zurückgeben. Der Wert nach break wird zum Ergebnis der Schleife.
fn main() {
let mut counter = 0;
let result = loop {
counter += 1;
if counter == 10 {
break counter * 2;
}
};
println!("result {}", result);
}match als Ausdruck
Auch ein match ist ein Ausdruck. Jeder Arm erzeugt einen Wert, und der Wert des passenden Arms ist das Ergebnis.
fn main() {
let n = 2;
let label = match n {
1 => "one",
2 => "two",
_ => "many",
};
println!("{}", label);
}Alles zusammenführen
Wenn Sie Blöcke und den Kontrollfluss als Ausdrücke behandeln, wird Rust prägnant: Berechnung und Rückgabe erfolgen in einem fließenden Schritt.
fn main() {
let score = 85;
let grade = if score >= 90 { 'A' } else if score >= 80 { 'B' } else { 'C' };
println!("grade {}", grade);
}Kurztest
Was bewirkt ein Semikolon bei einem Ausdruck?
Zusammenfassung
Ausdrücke und Anweisungen in Rust:
- Anweisungen (wie
let) führen etwas aus, geben aber keinen Wert zurück. - Ausdrücke werden zu einem Wert ausgewertet.
- Blöcke,
if,matchundloopsind Ausdrücke. - Der letzte Ausdruck ohne Semikolon ist der Rückgabewert.
fn main() {
let x = { let a = 2; a * a };
let y = if x > 3 { "big" } else { "small" };
println!("{} {}", x, y);
}Häufig gestellte Fragen
Ist die Lektion „Ausdrücke und Anweisungen“ kostenlos?
Ja — der vollständige Text von „Ausdrücke und Anweisungen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Learn Rust Coding-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Learn Rust Coding-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Ausdrücke und Anweisungen“?
Der letzte Ausdruck Du übst Learn Rust Coding mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Learn Rust Coding zu starten?
Keine Vorkenntnisse erforderlich. Learn Rust Coding auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 4.
Wie lange dauert die Lektion „Ausdrücke und Anweisungen“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Learn Rust Coding-Lektion Code schreiben und ausführen?
Ja. Jede Learn Rust Coding-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Funktionen definieren
- Ausdrücke und Anweisungen
- Closures
- Fn, FnMut, FnOnce