Einen Vektor erstellen
Teil des Abschnitts Logic & Flow der Rust-Journey von Coddy — Lektion 8 von 66.
Nachdem Sie nun verstehen, was Vektoren sind, lernen wir, wie man sie erstellt. Rust bietet zwei primäre Möglichkeiten, einen Vektor zu erstellen, die jeweils für unterschiedliche Situationen geeignet sind.
Die erste Methode verwendet Vec::new(), um einen leeren Vektor zu erstellen, dem Sie später Elemente hinzufügen können:
let mut numbers = Vec::new();Beachten Sie, dass wir mut verwenden, da wir wahrscheinlich später Elemente zu diesem leeren Vektor hinzufügen möchten. Rust kann den Typ eines leeren Vektors nicht immer bestimmen, daher müssen Sie ihn möglicherweise explizit angeben:
let mut numbers: Vec<i32> = Vec::new();Die zweite Methode verwendet das vec![]-Makro, um einen Vektor mit Initialwerten zu erstellen:
let numbers = vec![1, 2, 3, 4, 5];Das vec![]-Makro ist praktischer, wenn Sie die Startwerte kennen. Rust kann den Typ automatisch aus den von Ihnen bereitgestellten Werten bestimmen, sodass keine Typannotation erforderlich ist. Dieser Vektor enthält fünf Ganzzahlen und ist sofort einsatzbereit.
Das vec![]-Makro unterstützt auch eine Wiederholungssyntax, um einen Vektor zu erstellen, der eine bestimmte Anzahl von Malen mit demselben Wert gefüllt ist:
let zeros = vec![0; 5]; // [0, 0, 0, 0, 0]Die Syntax lautet vec![value; n], wobei value das zu wiederholende Element ist und n angibt, wie oft es wiederholt werden soll. Dies ist nützlich, wenn Sie einen Vektor bekannter Größe benötigen, der mit einem Standardwert vorbefüllt ist.
Beide Ansätze erstellen denselben Vektortyp – die Wahl hängt davon ab, ob Sie Anfangswerte haben oder planen, den Vektor schrittweise aufzubauen.
Aufgabe
EinfachSie erhalten eine Zahl als Eingabe, die angibt, wie viele Elemente ein Vektor enthalten soll. Lesen Sie die Eingabe ein, konvertieren Sie diese in eine Ganzzahl und erstellen Sie einen Vektor mit dieser Anzahl an Elementen, wobei jedes Element die Zahl 10 ist.
Anforderungen:
- Lesen Sie die Eingabe ein und konvertieren Sie diese in eine Ganzzahl
- Erstellen Sie einen Vektor mit dem
vec![]Makro - Der Vektor sollte die angegebene Anzahl an Elementen enthalten
- Jedes Element sollte den Wert
10haben - Geben Sie jedes Element in einer separaten Zeile aus
Eingabe: Eine einzelne Ganzzahl, welche die Anzahl der Elemente darstellt
Ausgabe: Geben Sie jedes Element des Vektors in einer separaten Zeile aus
Spickzettel
Rust bietet zwei primäre Möglichkeiten, um Vektoren zu erstellen:
Verwendung von Vec::new(), um einen leeren Vektor zu erstellen:
let mut numbers = Vec::new();Verwenden Sie mut, wenn Sie planen, später Elemente hinzuzufügen. Möglicherweise müssen Sie den Typ explizit angeben:
let mut numbers: Vec<i32> = Vec::new();Verwendung des vec![]-Makros, um einen Vektor mit Initialwerten zu erstellen:
let numbers = vec![1, 2, 3, 4, 5];Das vec![]-Makro bestimmt den Typ automatisch anhand der bereitgestellten Werte.
Verwendung des vec![]-Makros, um einen Vektor mit einem wiederholten Wert zu erstellen:
let numbers = vec![0; 5]; // [0, 0, 0, 0, 0]Die Syntax vec![value; n] erstellt einen Vektor, der value genau n-mal wiederholt enthält.
Probier es selbst
use std::io;
fn main() {
// Eingabe lesen
let mut input = String::new();
io::stdin().read_line(&mut input).expect("Failed to read line");
let n: usize = input.trim().parse().expect("Invalid input");
// TODO: Schreiben Sie Ihren Code unten
// Erstellen Sie einen Vektor mit n Elementen, die jeweils den Wert 10 haben
// Geben Sie jedes Element in einer separaten Zeile aus
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Logic & Flow
1Fortgeschrittener Kontrollfluss
Der 'match'-AusdruckAbgleichen mehrerer WerteBereiche abgleichenDer 'if let'-AusdruckSchleifen als AusdrückeRückblick – Einfacher Befehls-Parser4Daten gruppieren mit Structs
Was ist ein Struct?Übersicht über StructsZugriff auf Struct-FelderVeränderbare StructsStructs als FunktionsparameterTupel-StructsZusammenfassung – Ein Buch-Struct erstellen2Einführung in Vektoren
Was ist ein Vektor?Einen Vektor erstellenElemente mit push hinzufügenZugriff auf Vektor-ElementeÜber einen Vektor iterierenVeränderliche IterationElemente entfernenZusammenfassung – Einfacher Score-Tracker5Schlüssel-Wert-Paare mit Hash Maps
Was ist eine Hash Map?Erstellen einer Hash MapEinfügen von Schlüssel-Wert-PaarenZugreifen auf WerteIterieren über eine Hash MapAktualisieren eines WertesEntfernen eines PaaresZusammenfassung – Wortzähler8Projekt: Einfaches Artikelinventar
Projekt-SetupEinen Artikel hinzufügenLagerbestand prüfenEinen Artikel verkaufenAlles zusammenfügen11Abschluss-Herausforderungen
Wiederholung - Einzigartige ElementeWiederholung - Benutzerprofil-ValidatorWiederholung - Noten-Zusammenfassung3Kommandozeilen-To-Do-Liste
Projekt-SetupEine Aufgabe hinzufügenAlle Aufgaben anzeigenEine Aufgabe entfernenFinaler Code