Rust-Grundlagen

Rust Vectors: Vec<T>

A list that grows while the program runs: push, pop, sort and read items safely.

  • Einsteiger
  • 2 Min. Lesezeit
  • 1 ausführbares Beispiel
Das lernst du
  • vec! and push
  • Indexing vs get
  • sort and pop
vec![3, 1, 4] after two pushes
30
11
42
1push
5push
A Vec grows at the end.

A growable list

A vector, written Vec<T>, is a list that can grow and shrink while the program runs. It is the collection you will use most often in Rust.

vec! creates a vector with starting values and push adds to the end. numbers[2] stops the program if the index does not exist, while get returns None instead. pop removes the last item and returns it inside Some.

Das Wichtigste

  1. push adds to the end, pop removes from the end.
  2. numbers[10] stops the program if the index is missing.
  3. get(10) returns None instead.

Ausführbares Rust-Beispiel

Rust
Code ausführen →
main.rs
fn main() {
    let mut numbers = vec![3, 1, 4];
    numbers.push(1);
    numbers.push(5);

    println!("{:?}", numbers);
    println!("length: {}", numbers.len());
    println!("third: {}", numbers[2]);

    match numbers.get(10) {
        Some(value) => println!("found {value}"),
        None => println!("no item at index 10"),
    }

    numbers.sort();
    let last = numbers.pop();
    println!("{:?} after pop, removed {:?}", numbers, last);
}
Run-Button für dieses Beispiel erstellen Ergebnis der Ausführung
[3, 1, 4, 1, 5]
length: 5
third: 4
no item at index 10
[1, 1, 3, 4] after pop, removed Some(5)

Üben

Öffne das Beispiel im Online-Compiler, ändere einen Wert oder füge eine Zeile hinzu und sage die Ausgabe voraus, bevor du es ausführst. Bring den Code danach absichtlich zum Scheitern und lies die Meldung des Compilers.

Lektion fertig?

Markiere sie als gelernt, um deinen Fortschritt zu verfolgen.

Weiter: Fibonacci Sequence →

Mit einer Challenge üben

Nutze den Inhalt dieser Lektion, um ein echtes Problem zu lösen. Jede Challenge läuft im Browser, mit sofortigen Tests und einem KI-Review.

Alle Challenges