Range-Leitfaden
Teil des Abschnitts Fundamentals der Rust-Journey von Coddy — Lektion 65 von 75.
In dieser Lektion werden wir mehr darüber erfahren, wie range funktioniert.
Grundlegende Syntax für Bereiche:
start..end- Erzeugt einen Bereich von start bis end (exklusiv)start..=end- Erzeugt einen Bereich von start bis end (inklusiv)
..end- Erstellt einen Bereich von 0 bis zum Ende (exklusiv)..=end- Erstellt einen Bereich von 0 bis zum Ende (inklusiv)
start..– Erstellt einen Bereich von start bis unendlich..– Erstellt einen Bereich von minus unendlich bis plus unendlich
Bereich umkehren mit .rev():
(0..5).rev()- 4, 3, 2, 1, 0(0..=5).rev()- 5, 4, 3, 2, 1, 0
Schrittsprünge mit .step_by(n):
(0..10).step_by(2)- 0, 2, 4, 6, 8(0..10).rev().step_by(2)- 9, 7, 5, 3, 1
Zum Beispiel:
// Einfacher Vorwärtsbereich
for i in 0..5 { }
// Werte: 0, 1, 2, 3, 4// Inklusiver Bereich
for i in 0..=5 { }
// Werte: 0, 1, 2, 3, 4, 5// Umgekehrter Bereich
for i in (0..5).rev() { }
// Werte: 4, 3, 2, 1, 0// Schrittweite 2
for i in (0..10).step_by(2) { }
// Werte: 0, 2, 4, 6, 8// Kombiniere Umkehrung und Schrittweite
for i in (0..10).rev().step_by(3) { }
// Werte: 9, 6, 3, 0Aufgabe
EinfachErstellen Sie ein Programm, das mit zwei Arrays von Zahlen beginnt und für das erste Array alle Zahlen in umgekehrter Reihenfolge in 3er-Schritten durch die Array-Positionen ausgibt, und für das zweite alle Zahlen, die durch 4 teilbar sind, in umgekehrter Reihenfolge ausgibt. Geben Sie dies im folgenden Format aus:
Array 1: [1], [2], [3], ...
Array 2: [1], [2], [3], ...Spickzettel
Range-Syntax in Rust:
start..end- Erzeugt einen Bereich von start bis end (exklusiv)start..=end- Erzeugt einen Bereich von start bis end (inklusiv)..end- Erzeugt einen Bereich von 0 bis end (exklusiv)..=end- Erzeugt einen Bereich von 0 bis end (inklusiv)start..- Erzeugt einen Bereich von start bis unendlich..- Erzeugt einen Bereich von minus unendlich bis plus unendlich
Rückwärtsbereiche mit .rev():
(0..5).rev()- 4, 3, 2, 1, 0(0..=5).rev()- 5, 4, 3, 2, 1, 0
Schrittweiten mit .step_by(n):
(0..10).step_by(2)- 0, 2, 4, 6, 8(0..10).rev().step_by(2)- 9, 7, 5, 3, 1
// Einfacher Vorwärtsbereich
for i in 0..5 { }
// Werte: 0, 1, 2, 3, 4
// Inklusiver Bereich
for i in 0..=5 { }
// Werte: 0, 1, 2, 3, 4, 5
// Rückwärtsbereich
for i in (0..5).rev() { }
// Werte: 4, 3, 2, 1, 0
// Schrittweite 2
for i in (0..10).step_by(2) { }
// Werte: 0, 2, 4, 6, 8
// Kombination aus Rückwärts und Schrittweite
for i in (0..10).rev().step_by(3) { }
// Werte: 9, 6, 3, 0Probier es selbst
fn main() {
let numbers1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26];
let numbers2 = [17, 53, 24, 77, 84, 98, 24, 36, 89, 31, 36];
print!("Array 1: ");
// Schreibe deinen Code hier
println!();
print!("Array 2: ");
// Schreibe deinen Code hier
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Fundamentals
4Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorArithmetische AbkürzungenVergleichsoperatorenString-Vergleich7Grundlagen IO
Ausgabe in die KonsoleBenutzereingaben lesenWiederholung - Bis 120Wiederholung - Wahr oder Falsch5Operatoren Teil 2
Logische Operatoren Teil 1Logische Operatoren Teil 2Wiederholung - Einfache LogikLogische Operatoren Teil 311Funktionen
Funktionen deklarierenParameter und ArgumenteRückgabewerteMehrere RückgabewerteWiederholung - Sigma-FunktionWiederholung - Validierungsfunktion14Iterieren über Arrays
Range-LeitfadenErweiterte For-SchleifeBorrowing in SchleifenGängige Array-Operationen3Variablen Teil 2
TypdeklarationNamenskonventionenTypinferenzRückblick - Variablen initialisierenTypumwandlung6Entscheidungsfindung
If-AusdrückeIf-ElseMatch-AnweisungZusammenfassung - If-ElseVerschachteltes If-Else9Schleifen
For-Schleife über SerienWhile-SchleifeBreakContinueVerschachtelte SchleifenSchleifen-LabelsEndlosschleifeRückblick – Dynamische Eingabe