Range-Leitfaden
Teil des Abschnitts Grundlagen der Rust-Journey von Coddy. Lektion 65 von 75.
In dieser Lektion werden wir uns genauer ansehen, wie range funktioniert.
Grundlegende Bereichssyntax:
start..end– Erstellt einen Bereich von start bis end (ausschließlich)start..=end– Erstellt einen Bereich von start bis end (einschließlich)
..end– Erstellt einen Bereich bis end (exklusiv) ohne Startwert. Einefor-Schleife kann ihn nicht verwenden, aber damit lässt sich ein Array ab Index 0 ausschneiden:&arr[..3]sind die ersten 3 Elemente..=end– Erstellt einen Bereich bis end (inklusiv) ohne Startwert und wird auf dieselbe Weise verwendet:&arr[..=3]sind die ersten 4 Elemente
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
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
Zum Beispiel:
// Einfacher vorwärtslaufender Bereich
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// In 2er-Schritten
for i in (0..10).step_by(2) { }
// Werte: 0, 2, 4, 6, 8// Rückwärtsdurchlauf und Schrittweite kombinieren
for i in (0..10).rev().step_by(3) { }
// Werte: 9, 6, 3, 0Aufgabe
EinfachDir sind zwei Arrays, numbers1 und numbers2, gegeben. Gib für jedes eine Zeile aus:
- Array 1: Beginne an der letzten Position von
numbers1und gehe jeweils 3 Positionen rückwärts (Indizes 25, 22, 19, ...); gib den Wert an jeder Position aus. - Array 2: Durchlaufe
numbers2vom letzten Element bis zum ersten und gib nur die Werte aus, die durch 4 teilbar sind.
Gib jeden Wert in eckigen Klammern aus, mit , zwischen den Werten und nichts nach dem letzten:
Array 1: [26], [23], [20], ...
Array 2: [36], [36], ...Probier 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 Grundlagen
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Übe selbstständig: Online-Rust-Compiler